日期时间分析 - 无法恢复原始值

时间:2013-07-22 19:28:27

标签: java parsing datetime

DateTimeFormatter DATEFORMAT = ISODateTimeFormat.dateTimeNoMillis();

String testDate = "2013-10-26T04:23:14-08:00";

System.out.println(testDate);
System.out.println(DATEFORMAT.parseDateTime(testDate).toString(DATEFORMAT));

输出:

2013-10-26T04:23:14-08:00
2013-10-26T05:23:14-07:00

为什么输出会在一小时左右关闭?是否需要指定任何其他参数才能将DateTime转换回字符串?

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

我假设这是使用joda-time库。正如上面的评论所示,这是一个TZ问题。您可以通过DateTime对象上的方法调用轻松地将任何时间转换为您选择的TZ或UTC。有点像:

dt.withZone(DateTimeZone.UTC);

您的结果会有所不同,因为默认行为是在系统的当前时区打印DateTime。