我需要格式化我的日期(使用Java格式)。当我使用以下代码(取自tutorial/reference source)时,它只会出现以下错误。我已经尝试了我能想到的一切。
我的代码:
SimpleDateFormat format = new SimpleDateFormat ("E dd/MMM/yy");
java.util.Date date = format.parse ("12/31/2006");
System.out.println (date);
这会导致以下错误:
java.text.ParseException:Unparseable date:“12/31/2006”
我实际上是在尝试格式化这个字符串"2011-7-27"
,但它给出了同样的错误,这导致我尝试将该格式用于我提供给它的字符串。
你能看到哪些东西我搞砸了吗?
答案 0 :(得分:3)
您提供的代码不是从您链接到的页面中获取的。该格式字符串不会出现在页面的任何位置。
你在格式说明符中包含了一个“E”,它对应于星期几 - 但是你没有提供。您还使用“MMM”作为月份说明符,这将是文本表示(例如“Jul”)。最后,您为年份指定了“yy”,但随后给出了4位数。 (这实际上不会导致问题 - 它会处理四位数 - 但最好指定您实际期望的格式。)如果您只是想要提供“12/31/2006”您的格式应为"MM/dd/yyyy"
。
如果您确实要解析“2011-7-27”,则应使用"yyyy-M-dd"
作为格式字符串。