Formatar data no java [RESOLVIDO]

1 resposta
datejavaformat
R

Galera, estou tentando formatar uma data, já fui em vários tópicos do fórum e mesmo assim não estou conseguindo aplicar.

import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Scanner;
public class JavaApplication1 {
public static void main(String[] args) throws ParseException {
    SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
    
    String data = "Sat Mar 11 00:00:00 BRT 2017";
    java.util.Date utilDate = formatter.parse(data);
    String dataFormatada = formatter.format(utilDate);
    
        System.out.println(dataFormatada);
}
}
Erro: Exception in thread main java.text.ParseException: Unparseable date: "Sat Mar 11 00:00:00 BRT 2017"

at java.text.DateFormat.parse(DateFormat.java:357)

at javaapplication1.JavaApplication1.main(JavaApplication1.java:17)

C:\Users\440528\AppData\Local\NetBeans\Cache\8.2\executor-snippets\run.xml:53: Java returned: 1

Entrada: Sat Mar 11 00:00:00 BRT 2017
Resultado esperado: 2017-03-11

Obrigado,

Consegui resolver da seguinte forma:

SimpleDateFormat formatterJava = new SimpleDateFormat(“EEE MMM dd HH:mm:ss zzz yyyy”, Locale.US);
SimpleDateFormat formatterSQL = new SimpleDateFormat(“yyyy-MM-dd”);

String data = "Sat Mar 11 00:00:00 BRT 2017";
java.util.Date utilDate = formatterJava.parse(data);
    System.out.println(formatterSQL.format(utilDate));

1 Resposta

S

Se você está formatando datas para fazer insert/update no banco de dados, já está no caminho errado.
Utilize PreparedStatement e o metodo setDate para setar diretamente o objeto do tipo data e deixar o driver JDBC se resolver

Criado 24 de agosto de 2017
Ultima resposta 24 de ago. de 2017
Respostas 1
Participantes 2