use*_*220 4 java datetime date jodatime
我读从文件看起来像琴弦"2015-06-06T01:51:49-06:00"成乔达时间 DateTime对象.但是DateTime不按我想要的方式行事.
import org.joda.time.DateTime;
System.out.println("2015-06-06T01:51:49-06:00");
System.out.println(new DateTime("2015-06-06T01:51:49-06:00"));
Run Code Online (Sandbox Code Playgroud)
结果如下
2015-06-06T01:51:49-06:00
2015-06-06T00:51:49.000-07:00
Run Code Online (Sandbox Code Playgroud)
后来我需要小时和分钟.这将是1:51.但DateTime是在我猜的不同时区打印出来的吗?如何打印DateTime2015-06-06T01:51:49.000-06:00
A DateTime存储时区,但DateTime(Object instant)构造函数首先将其转换String为瞬间(毫秒),从而丢失时区信息,因此它将默认时区应用于该时刻.
要保留时区,请使用DateTime.parse(String str):
System.out.println("2015-06-06T01:51:49-06:00");
System.out.println(new DateTime("2015-06-06T01:51:49-06:00"));
System.out.println(DateTime.parse("2015-06-06T01:51:49-06:00"));
Run Code Online (Sandbox Code Playgroud)
产量
2015-06-06T01:51:49-06:00
2015-06-06T03:51:49.000-04:00
2015-06-06T01:51:49.000-06:00
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
244 次 |
| 最近记录: |