Jak wykonać tę konwersję w języku Java?Konwertuj "piątek, 1 lutego 2013 r." Na "2013-02-01"
Obecnie robię:
public static String formatDate(String strDateToFormat) {
try {
SimpleDateFormat sdfSource = new SimpleDateFormat("EEEE, MMMM DD, YYYY");
Date date = sdfSource.parse(strDateToFormat);
SimpleDateFormat sdfDestination = new SimpleDateFormat("yyyy-MM-dd");
return sdfDestination.format(date);
} catch (ParseException pe) {
System.err.println("Parse Exception : " + pe);
}
return null;
}
Powoduje to jednak w niewłaściwym formacie. Daje mi następujący wynik:
Friday, February 1, 2013 > 2013-01-04
Thursday, January 31, 2013 > 2013-01-03
Dlaczego tak wiele razy powtórzyłeś dane wyjściowe dla dwóch wartości? –
Zmień "DD" na "d" i "YYYY" przez "yyyy" –
Zamieniłbym "System.err.println (" Parse Exception: "+ pe);' z 'pe.printStackTrace();'. Albo, jeszcze lepiej, wyrzuć ten wyjątek ze swojej metody. –