无法解析法国日期

时间:2016-04-28 11:36:23

标签: java date datetime

我正在尝试解析JAVA中的一些法国日期。以下是一些样本。

  • 25 septembre 2013 a 21h42 par - Working
  • 1er juillet 2013 a 19h26 par - Not Working

以下是代码:

Date sampleDate = DateFormat.getDateInstance(DateFormat.LONG, Locale.FRENCH)
            .parse("25 septembre 2013 a 21h42 par");
    System.out.println(sampleDate);
    SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
    System.out.println(simpleDateFormat.format(sampleDate));

我能够成功解析(第一个日期),但无法解析第二个日期(1er juillet 2013 a 19h26 par)。但是,如果我从它的工作日期删除“呃”。那怎么能解决这个问题呢。

这是错误:

Exception in thread "main" java.text.ParseException: Unparseable date: "1er juillet 2013 a 19h26 par"
at java.text.DateFormat.parse(DateFormat.java:366)
at misc.DateSample.main(DateSample.java:27)

任何人都可以帮我解决这个问题吗?

谢谢&问候, Amar.T

1 个答案:

答案 0 :(得分:2)

您可以删除第一个标记中的字母:

String s = "1er juillet 2013 a 19h26 par";
String[] arr = s.split(" ");
arr[0] = arr[0].replaceAll("[\\D]", "");        
s = String.join(" ", arr);

s现在是:

"1 juillet 2013 a 19h26 par"

然后将其用于Date