我目前正在从事一些简单的项目,Java
并且在以下字符串中有日期:
String dateString = "Sun 7/14 03:44 AM 2013";
并希望将此字符串转换为Date
对象。我正在使用以下代码行来做到这一点。我搜索了站点,找到了解决方法DateFormatter
:
DateFormat format = new SimpleDateFormat("EEE M/dd hh:mm a yyyy");
Date d = format.parse(dateString);
但是我可能做错了,因为我总是会遇到异常:
Unparseable date: "Sun 7/14 03:44 AM 2013"
这似乎是我正在使用的模式的问题,但尝试了不同的模式,但没有任何效果。
某些字段(例如,星期几字段和/或AM /
PM标记)可能与您的默认字段不匹配Locale
。ParseException
具有方法getErrorOffset来确定模式不完全匹配的位置。
尝试
DateFormat format =
new SimpleDateFormat("EEE M/dd hh:mm a yyyy", Locale.ENGLISH);
问题内容: 在照顾了几个现有的帖子之后,我仍然无法使我的SimpleDateFormat解析器正常工作。这是代码: 我总是以ParseException结尾。这是调试消息的输出: 06-09 23:52:17.478:DEBUG / DEBUG(2436):java.text.ParseException:无法解析的日期:06-09 23:52:17.478:DEBUG / DEBUG(2436)
问题内容: 代码如下所示: 在上面的代码中,抛出不可解析的日期异常: 我不知道原因。 问题答案: 为什么要将日期转换为字符串并将其解析回日期? 代码失败的原因是因为您试图使用仅接受dd-MMM-yyy格式的日期的格式化程序转换完整日期。
问题内容: 我有一个字符串日期“ 31-Dec”和模式“ dd-MMM”。接下来的代码 产生异常 我做错什么了? 谢谢! 问题答案: 一个问题可能是您不是英语。试试这个: 这为我返回: 1970年12月31日星期四00:00:00欧洲中部时间 由于日期字符串中缺少年份,因此您会看到它会自动插入为年份。
问题内容: 我正在尝试解析一个日期,但是奇怪的是我遇到了一个例外。 这是代码: 例外是: 我已经阅读了文档,我认为我的模式是正确的。所以我不明白… 问题答案: 这可能是因为你计算机上的默认语言环境不是英语。 你应该使用: 代替。
问题内容: 我收到以下错误:“ java.text.ParseException:无法解析的日期:“ 2011年8月31日09:53:19””具有以下格式: 有人看到这个问题吗? 问题答案: 确保您使用正确的语言环境。(构造函数使用 系统默认的语言环境 ,它可能不是您要使用的 语言环境 。) 这在我的机器上工作正常: (例如,使用时会产生。)
问题内容: 我想将Twitter响应中的日期字符串转换为Date对象,但是我总是得到ParseException,并且看不到错误! 输入字符串:2010年12月23日星期四18:26:07 +0000 模式: 方法: 我也尝试过此方法:http : //friendpaste.com/2IaKdlT3Zat4ANwdAhxAmZ,但结果相同。 我在Mac OS X上使用Java 1.6。 干杯,