Я использую java 7, и я пытаюсь разобрать дату из плоского файла.Неверное использование или проблема Java 7 SimpleDateformat?
Даты этого файла имеют следующий формат: «30-Mar-2012 14:05:02». Я не могу это изменить, это зависит от другого программного обеспечения.
В соответствии с javadoc этот формат: «dd-MMM-yyyy HH: mm: ss» - один для использования.
Но по неизвестной причине это не работает.
Вот небольшая программа, которая воспроизводит проблему.
package javaapplication2;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;
import java.util.logging.Level;
import java.util.logging.Logger;
public class JavaApplication2 {
public static void main(String[] args) {
Date d = null;
try {
SimpleDateFormat df;
df = new SimpleDateFormat("dd-MMM-yyyy HH:mm:ss", Locale.FRANCE);
d = df.parse("30-Mar-2012 14:05:02");
} catch (ParseException ex) {
System.err.println(ex.getMessage());
}
if (d != null) {
System.out.println(d.toString());
}
}
}
Проблема не происходит, когда я поставил «с» после «Mar» в первоначальной даты («Марс» полное название марта на французском языке, это также работает с «март» и Locale.US в формате).
Am-I что-то не так? Действительно ли это можно сделать так? У меня там есть недокументированная проблема в java об этом?
Что не работает? – JHS
df.parse исключает исключение – OOProg
Является ли это проблемой для других месяцев (короткое имя) для французского? – JHS