Изменить формат даты Java [закрыто]
У меня есть объект Date с форматом
/107/2013 12:00:00 AM
Ожидаемое значение для меня:
2013-07-01
Как я это делаю?
Я пытаюсь с этим кодом
public static Date formatearFecha( Date fecha ){
String fechaString = new SimpleDateFormat("yyyy-MM-dd").format(fecha) ;
DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
Date fechaFormateada = null;
try {
fechaFormateada = df.parse(fechaString);
} catch (ParseException ex) {
Logger.getLogger(TestThings.class.getName()).log(Level.SEVERE, null, ex);
}
return fechaFormateada;
}
Когда я пытаюсь сделать тест, я получаю это:
System.out.println( formatearFecha(myDate) );
Mon Sep 30 00:00:00 COT 2013
Обновить:
моя проблема была в sql изменить на java.util.Date на java.sql.Date
Я решаю это так:
private String formatearFecha( Date fecha ){
return new SimpleDateFormat("yyyy-MM-dd").format(fecha);
}
private java.sql.Date stringToSQLDate( String fecString ){
java.sql.Date fecFormatoDate = null;
try {
SimpleDateFormat sdf = new java.text.SimpleDateFormat("yyyy-MM-dd", new Locale("es", "ES"));
return new java.sql.Date(sdf.parse(fecString).getTime());
} catch (ParseException ex) { }
return null;
}
И проверить:
stringToSQLDate( formatearFecha( myDate ) );