2017-07-31 55 views
2

我在字符串的日期和价值观像"18,June 2017, 5:39AM""01,July 2017, 9:09AM"现在我想以这种格式,这些日期转换为"2017-06-18 18:47:17"。我使用此代码:“java.text.ParseException:无法解析的日期:‘18,2017年6月,上午05时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); 

但是我有一个例外:在线程 “主要” java.text.ParseException

异常:无法解析的日期:“18,2017年6月,上午05时39分“
at java.text.DateFormat.pa rse(DateFormat.java:366)

如何将"18,June 2017, 6:47PM"转换为"2017-06-18 18:47:17"

+1

之间从你的例子,它看起来像输入日期的PM/AM-部分是直接相邻的微小部分。但在你的格式中,你在分钟和am/pm-marker之间得到一个空格 – dpr

+0

yyyy和,,之间有空格,在删除dpr建议的空格和代码更改后,它不会给出分析异常。 – deepakl

回答

3

必须添加单引号角落找寻逗号和去除空白mma

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

它在为我工作@jens谢谢 –

+0

@anujdhiman不客气 – Jens

相关问题