Por que não é possível analisar uma SimpleDateFormat com padrão “MMMMM dd” em Java?
Pergunta
Eu preciso para analisar uma string como "12 de fevereiro de 1981" como uma data. Eu uso SimpleDateFormat . Mas se eu fizer:
new SimpleDateFormat("MMMMM dd, yyyy").parse("February 12, 1981")
Eu recebo java.text.ParseException.
Eu tentei reduzi-la para ver onde está o problema. Primeiro:
new SimpleDateFormat("MMMMM").parse("February")
funciona. Então:
new SimpleDateFormat("MMMMM dd").parse("February 12")
não funciona mais. Alguém sabe por que? Eu também tentei new SimpleDateFormat("MMMMM' 'dd")
.
Eu estou usando JRE 1.6.0_06.
Solução
Qual versão do JDK / JRE você está usando?
Esta multa funciona para mim com 1.4.2_14, 1.5.0_16 e 1.6.0_07:
SimpleDateFormat df = new SimpleDateFormat("MMMMM dd, yyyy");
Date parsed = df.parse("February 12, 1981");
System.out.println(parsed);
saída:
Thu 12 de fevereiro 00:00:00 EST 1981
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow