Pergunta

Como eu tomo uma sequência de aniversário de entrada como 02 26 1991 e a transformo em um calendário gregoriano?

Eu tentei analisá -lo primeiro, mas continua me dando uma mensagem de erro, então não tenho muita certeza do que estou fazendo de errado. Eu também tenho outros dados de entrada antes desta data. Uma é a outra string e uma é um valor duplo.

Foi útil?

Solução

Usar SimpleDateFormat para analisar a data e depois atribuí -la a um Calendar.

DateFormat df = new SimpleDateFormat("dd MM yyyy");
Date date = df.parse("02 26 1991");
Calendar cal = Calendar.getInstance();
cal.setTime(date);

A terceira linha pode ser substituída por:

Calendar cal = new GregorianCalendar();

Mas eu prefiro a primeira versão.

Outras dicas

Use um DateFormat como mostrado aqui:

Exemplo:

DateFormat dateFormat = new SimpleDateFormat("hh:mm dd/MM/yy");
dateFormat.setLenient(false);
Date d = dateFormat.parse("06:23 01/05/06");

Use o método parse () da classe SimpleDateFormat. Você pode usar o Setlenient (False) para forçar a análise estrita.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top