Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/306.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Datetime分析-无法获取原始值_Java_Parsing_Datetime - Fatal编程技术网

Java Datetime分析-无法获取原始值

Java Datetime分析-无法获取原始值,java,parsing,datetime,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)); 为什么输出会减少一个小时左右?是否需要为

输出:

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));
为什么输出会减少一个小时左右?是否需要为将DateTime转换回字符串指定任何其他参数


非常感谢您的帮助。

我想这是在使用joda时间库。正如上面的评论所表明的,这是一个问题。通过对DateTime对象的方法调用,可以轻松地将任何时间转换为所选的TZ或UTC。大致如下:

dt.withZone(DateTimeZone.UTC)


您将得到不同的结果,因为默认行为是在系统的当前时区中打印日期时间。

可能存在夏令时问题?您正在运行的计算机位于T5时区,您正在处理T4时区。他们的意思是完全相同的时间。
2013-10-26T04:23:14-08:00
2013-10-26T05:23:14-07:00