在Java中将字符串转换为日期

3
我正在使用Java编程,但昨天在解析日期(从字符串转换为日期)时遇到了一些问题。
我遇到了以下异常:
java.text.ParseException: Unparseable date: "Fri May 24 18:47:31 GMT+01:00 2013"
以下是我的代码:
String db= obj.getDebut(); // = "Fri May 24 18:47:31 GMT+01:00 2013"
String pattern2 = "EEE MMM d HH:mm:ss ZZZZ yyyy";
Date datedebutEntree = new SimpleDateFormat(pattern2).parse(db);    

有人能告诉我我做错了什么吗?


3
应用程序语言出了问题,我添加了 locale.ENGLISH ,然后就可以正常工作了。谢谢你的帮忙。 - omar
2个回答

4

您的应用程序语言似乎是法语。如果您的默认Locale也是如此,则在尝试解析英文日期和月份字段时会引发ParseException异常。请改用Locale.ENGLISH

String pattern2 = "EEE MMM d HH:mm:ss Z yyyy";
Date datedebutEntree = new SimpleDateFormat(pattern2, Locale.ENGLISH).parse(db);

0

你不需要重复使用 Z 模式。可以使用这个:

String pattern2 = "EEE MMM d HH:mm:ss Z yyyy";

我仍然有异常: - omar
2013年5月18日下午7:08:41 GUI.gestionReservations ajouterActionPerformed 严重错误:null java.text.ParseException:无法解析的日期:“Fri May 24 19:08:36 GMT+01:00 2013” - omar
你正在使用法语区域设置 :) - likeitlikeit

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接