我想将字符串转换为java.util.Date。出于同样的目的,我使用了以下代码,
String timeStamp = "Mon Feb 14 18:15:39 IST 2011";
DateFormat formatter = new SimpleDateFormat("dow mon dd hh:mm:ss zzz yyyy");
Date ts = (Date)formatter.parse(timeStamp);
给SimpleDateFormat()的格式是java.util.Date的格式。当您将util的Date转换为字符串时,它会以这种格式出现('dow mon dd hh:mm:ss zzz yyyy')。 但是当我执行代码时,它给了我异常。我不知道究竟需要做些什么才能摆脱这个问题。我发布了异常的StackTrace部分。如果有人知道解决方案,
java.lang.IllegalArgumentException异常: 非法模式字符'o' java.text.SimpleDateFormat.compile(SimpleDateFormat.java:769) 在 java.text.SimpleDateFormat.initialize(SimpleDateFormat.java:576) 在 java.text.SimpleDateFormat中。(SimpleDateFormat.java:501) 在 java.text.SimpleDateFormat中。(SimpleDateFormat.java:476) 提前谢谢。
答案 0 :(得分:13)
请改为尝试:
DateFormat formatter = new SimpleDateFormat("EEE MMM dd hh:mm:ss zzz yyyy");
E
用于“Day in Week”作为文本,M
是月份名称。
答案 1 :(得分:3)
你认为格式错了我相信,如果你在这里看http://download.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html它的一周中的E和一个月的M