2016-04-28 9 views
0

私はいくつかのフランス語の日付をJAVAで解析しようとしています。ここにいくつかのサンプルがあります。フランス語の日付を解析できません

  • 25 septembreを2013 21h42パー - ワーキング
  • プルミエ2013年に19h26パーをジュイエ - ここ

を動作しないことは、コードです:

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)); 

私がすることができました(最初の日付)は正常に解析されますが、2番目の日付は解析できません(1月juillet 2013と19h26 par)。しかし、もし私が "er"をその日付から削除するならば。だからこの問題をどのように解決することができますか?ここで

は誤りです:

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

私はスペイン語ではないと確信しています。 また、私は日付の1つだけのコードを参照してください。 – dquijada

+0

フレンチのように見えます –

+2

["11月21日"、 "21日"または "23日" Java?](http://stackoverflow.com/questions/4011075/how-do-you-format-the-day-of-the-month-to-say-11th-21st-or-23rd-in-java)正確には完全な複製ではありませんが、解決策は適用されます –

答えて

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

関連する問題