0

我需要格式化我的日期(在 Java 中),它是字符串格式。当我使用以下代码时,取自教程/参考源,它只会给出以下错误。我已经尝试了我能想到的一切。

我的代码:

SimpleDateFormat format = new SimpleDateFormat ("E dd/MMM/yy");
java.util.Date date = format.parse ("12/31/2006");
System.out.println (date);

这会导致以下错误:

java.text.ParseException:无法解析的日期:“2006 年 12 月 31 日”

我实际上是在尝试格式化这个字符串"2011-7-27",但它给出了同样的错误,这导致我为我提供给它的字符串尝试了这种格式。

有什么你能看到我在某处搞砸的吗?

4

1 回答 1

3

您提供的代码不是从您链接到的页面中获取的。该格式字符串不会出现在页面上的任何位置。

您在格式说明符中包含了一个“E”,它对应于星期几 - 但是您没有提供它。您还使用了“MMM”作为月份说明符,这将是一个文本表示(例如“Jul”)。最后,您为年份指定了“yy”,但随后给出了 4 位数字。(这实际上不会引起问题 - 它可以处理四位数 - 但最好指定您实际期望的格式。)如果您只想给出“12/31/2006”,您的格式应该是"MM/dd/yyyy".

如果你真的想解析“2011-7-27”,你应该使用"yyyy-M-dd"格式字符串。

于 2011-07-28T13:44:46.553 回答