Como alterar o formato de data em java [duplicado]
-
21-12-2019 - |
Pergunta
Eu tenho uma corda e eu precisa para convertê-lo em "AAAA-mm-dd" formato que eu sou incapaz de fazer.Eu verifiquei o posto semelhante em stckoverflow mas não ajuda, por isso estou postando essa consulta.
String stringDate = "Dec 13, 2013";
Eu preciso disso para ser converter para Data reportDate = 2013-12-13";quando eu uso o simpledateformat eu tenho unparsable data.Por favor, ajuda
Solução
Confira:
try {
SimpleDateFormat format1 = new SimpleDateFormat("MMM dd, yyyy");
SimpleDateFormat format2 = new SimpleDateFormat("yyyy-MM-dd");
String stringDate = "Dec 13, 2013";
Date date = format1.parse(stringDate);
System.out.println(format2.format(date));
} catch (ParseException exp) {
// Take appropriate action
}
Saída:2013-12-13
Outras dicas
Na programação, uma habilidade muito importante é levar a informação de que está próximo do que você precisa e utilizá-lo para encontrar o que você precisa fazer.
Olha o link nos comentários e você pode ver:
http://download.oracle.com/javase/1.5.0/docs/api/java/text/SimpleDateFormat.html
Ler e que você tem o que você precisa para ajustar a resposta lá para dar os resultados que você deseja.
Use SimpleDateFormat como aqui:new_date
é a sua Data
String stringDate = "Dec 13, 2013";
SimpleDateFormat format = new SimpleDateFormat("YYYY-MM-DD");
Date new_date=format.parse(stringDate);
String date="Your date";
SimpleDateFormat format = new SimpleDateFormat("MMM DD, YYYY");
Date d= format.parse(date);
DateFormat newFormat = new SimpleDateFormat("YYYY-MM-DD");
System.out.println(newFormat.format(d));
Gostaria de fazer algo como:
SimpleDateFormat parser = new SimpleDateFormat("MMM dd, yyyy");
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
Date reportDate = parser.parse(stringDate)
String result = formatter.format(reportDate);