我的日期格式如下:
Pon Cze 07, 2011 9:42 pm
这是波兰语相当于英语日期:
Mon Jun 07, 2011 9:42 pm
我正在使用以下SimpleDateFormat匹配器:
SimpleDateFormat("EEE MMM dd, yyyy H:mm a", new Locale("pl", "PL"))
但由于AssertionFailedError,无法解析日期。我尝试了其他一些解决方案,但没有人适合我。你有什么想法我做错了吗?
答案 0 :(得分:3)
有两个问题:
wt
,而非Pon
H
(表示0到23之间的小时)而不是h
。我只是从第一个空格后的第一个字符进行解析(以避免解析“Pon”),并H
替换h
。在模式中:
DateFormat df = new SimpleDateFormat("MMM dd, yyyy h:mm a", new Locale("pl", "PL"));
Date d = df.parse(s.substring(s.indexOf(' ') + 1));
答案 1 :(得分:1)
看来,星期几只用两个字母表示,无论原因是什么。 尝试此代码并检查输出
SimpleDateFormat sdf = new SimpleDateFormat("EEE MMM dd, yyyy H:mm a", new Locale("pl", "PL"));
GregorianCalendar gc = new GregorianCalendar(new Locale("pl", "PL"));
gc.setTime(new Date(System.currentTimeMillis()));
System.out.println(sdf.format(gc.getTime()));
我的输出是:“Wt wrz 27,2011 11:05 AM”
所以也许如果你尝试两个字母的工作日,它可以工作