2017-07-31 17 views
2

私は"18,June 2017, 5:39AM""01,July 2017, 9:09AM"のような文字列に日付と値を持っている今、私はこの形式で"2017-06-18 18:47:17"にこれらの日付を変換したいです。私はこのコードを使用してい:「java.text.ParseException:解析できない日: 『18、2017年6月、5:39』

String testDate = "18,June 2017, 5:39AM"; 
SimpleDateFormat formatter = new SimpleDateFormat("dd,MMMM yyyy , HH:mm a", Locale.ENGLISH); 
Date date = formatter.parse(testDate); 
System.out.println(date); 

をしかし、私は例外持っている:解析できない日:「18、2017年6月、5:39スレッド "メイン" java.text.ParseExceptionに

例外を"
at java.text.DateFormat.pa RSE私は"2017-06-18 18:47:17""18,June 2017, 6:47PM"を変換するにはどうすればよい(DateFormat.java:366)

+1

の間の空白を削除する必要があり分の部分に直接隣接しています。しかしあなたのフォーマットでは分とam/pm-markerの間にスペースがあります – dpr

+0

yyyyとスペースの間に空白があり、dprによって示唆されたスペースとコードの変更を取り除いた後は解析例外が発生しません。 – deepakl

答えて

3

あなたはコンマarroundの単一引用符を追加して、入力日付のPM/AM-一部のように見えるあなたの例からmma

SimpleDateFormat formatter = new SimpleDateFormat("dd','MMMM yyyy',' HH:mma", Locale.ENGLISH); 
+0

私のために働いています@jensありがとう –

+0

@anujdhiman – Jens

関連する問題