我有一个像Java的日期格式为UTC
DateFormat format = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS");
一个日期格式我有一个日期是这样的:
2017-02-23T11:00:04.072625
这 “日期” 是一个UTC日期(Z为空)。这解析得很好。但是,它似乎被解释为机器的时区。所以,我的机器是美国东部时间,这结束为
2017-02-23T11:00:04.072625-0500
这是错误的。我可以明确地设置时区与像
format.setTimeZone(TimeZone.getTimeZone("UTC"));
但如果时间来到了一个不同的区域在未来,这不会是正确的要么。
如果我将“Z”或“z”添加到SimpleDateFormat字符串中,则无法解析。
有关如何正确处理此问题的任何想法?
您是否正在使用Java 8? –
如果您设置时区,它将采用该值,否则默认情况下会占用您的机器时区。你有两种选择,你在找什么? –
Markus,是Java 8 – MichaelB