将字符串解析为日期对象
我有字符串“Tue Nov 12 2010”,我想在java.util.Date对象中解析它。 我下面写的代码像低于这个将字符串解析为日期对象
DateFormat format = new SimpleDateFormat("dd/MM/yyyy");
Date date= format.parse("Tue Nov 12 2010");
这是给例外:
java.text.ParseException: Unparseable date: "Sun Nov 21 2010"
没有得到什么错呢???
您已经创建
新的SimpleDateFormat( “DD/MM/YYYY”)的日期格式;
只会解析该表单的日期。即05/10/1989 你需要改变一些更合适的格式。
你的格式是错误的 - 如果你指定一个格式dd/MM/yyyy
,那么你需要提供格式化为对应格式(!)的字符串。 21/11/2010
。
从链接的文档中,一年中的“D”和一个月中的“d”是日期。也没有'Y'。 – codaddict 2010-11-22 13:25:54
@codaddict是我的错误 – 2010-11-22 13:29:48
解析您需要提供正确格式的日期。对于您提供的样本日期,格式将为"EEE MMM dd yyyy"
+1纠正我:) – 2010-11-22 13:33:07
您使用的日期格式错误。要根据您的字符串格式解析它,请使用“EEE MMM dd yyyy”
学习阅读代码并使用常识。
DateFormat format = new SimpleDateFormat("dd/MM/yyyy"); Date date= format.parse("Tue Nov 12 2010");
这应该是明显地告诉指定的字符串不匹配的格式被解析。他们在相邻的路线上,彼此相邻。它并没有比这更直接。
如果您要成为一名成功的程序员,您需要能够看到类似这样的内容。如果你看不到这一点,那么当两行代码出现问题甚至不在同一个源代码文件中时,你会如何发现类似的问题?
我的建议是承担一些个人责任,学习如何阅读和调试代码。像这样的东西应该是一个巨大的红旗,当你输入它时,两行代码不匹配。
在您键入问题的文本区域的右侧,有一个标题为“如何格式化**”的框。值得一读。我已经为您解决了代码格式问题,但现在您已经提出了五个问题,有时间开始独奏。 – 2010-11-22 13:20:42
为什么不能看到指定的“dd/MM/yyyy”格式与日期“2010年11月12日”不符? – 2010-11-22 13:24:48
如果有帮助,接受答案被认为是很好的形式。 @艾莉森既有帮助也是最快捷的答案。 – Jim 2010-11-26 10:55:04