我收到的 Java 日期格式如下:"Sun Sep 14 02:00:00 PDT 2014"
为 yyyy-MM-dd
格式,但我可以' 似乎解析它。我尝试的是以下内容:
String time = "Sun Sep 14 02:00:00 PDT 2014";
SimpleDateFormat f = new SimpleDateFormat("yyyy-MM-dd");
Date contractEffectiveDateFormat = f.parse(time);
System.out.println("Date: " + contractEffectiveDateFormat);
但是,我收到一条错误消息,指出此日期无法解析。我不确定如何解析这个日期,因为如果我尝试使用以下方法解析日期:
DateFormat df = new SimpleDateFormat("EEE MMM dd kk:mm:ss z yyyy");
这就是如何将日期正确解析为 Date 对象,
该字符串将变成一个 Date 对象,但我似乎无法从那里对它做任何事情。我想将其上交,使其看起来像 2014-09-14
。关于如何这样做的任何想法?谢谢!
最佳答案
使用两个 DateFormat
(s),一个用于输入,一个用于输出,
String time = "Sun Sep 14 02:00:00 PDT 2014";
DateFormat out = new SimpleDateFormat("yyyy-MM-dd");
DateFormat in = new SimpleDateFormat("EEE MMM dd kk:mm:ss z yyyy");
try {
Date effectiveDate = in.parse(time);
System.out.println("Date: " + out.format(effectiveDate));
} catch (ParseException e) {
e.printStackTrace();
}
输出是请求的
Date: 2014-09-14
关于java - 解析 Java 日期对象时遇到问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25840489/