我需要格式化我的日期(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”
,但它给出了相同的错误,这导致我尝试为我提供给它的字符串使用该格式。
你能看到我在某个地方搞砸了什么吗?
最佳答案
您提供的代码不是取自您链接到的页面。该格式字符串不会出现在页面上的任何位置。
您在格式说明符中包含了一个“E”,它对应于一周中的某一天 - 但您没有提供它。您还使用“MMM”作为月份说明符,这将是文本表示(例如“Jul”)。最后,您指定了年份“yy”,但随后给出了 4 位数字。 (这实际上不会引起问题 - 它会处理四位数字 - 但最好指定您实际期望的格式。)如果您只是想要给出“12/31/2006”您的格式应为“MM/dd/yyyy”
。
如果您确实想解析“2011-7-27”,您应该使用“yyyy-M-dd”
作为格式字符串。
关于java - SimpleDateFormat 由于未知原因给出 ParseException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6859939/