【发布时间】:2016-04-19 17:34:12
【问题描述】:
我想在 android 中使用 Joda Time 库将时间转换为手机本地时区。
我的时间是 UTC,例如:2016-01-14 11:13:56
我现在的时间是:2016-01-14 12:13:56
当我运行这段代码时:
DateTime dt = new DateTime(DateTimeFormat.forPattern("yyyy-MM-dd HH:mm:ss").parseDateTime(usersResponse.lastUpdate),
DateTimeZone.UTC);
String time = String.valueOf(dt));
我得到:2016-01-14T10:13:56.000Z
当我运行这段代码时:
DateTime dt = DateTime.parse(usersResponse.lastUpdate, DateTimeFormat.forPattern("yyyy-MM-dd HH:mm:ss"));
String time = String.valueOf(dt));
我得到:2016-01-14T11:13:56.000+01:00
当我运行这段代码时:
DateTime dt = new DateTime(DateTimeFormat.forPattern("yyyy-MM-dd HH:mm:ss").parseDateTime(usersResponse.lastUpdate),
DateTimeZone.forID("Europe/Rome"));
String time = String.valueOf(dt));
我得到:2016-01-14T11:13:56.000+01:00
但这是我应该收到的错误消息:2016-01-14T12:13:56.000+02:00
我是否缺少任何配置。这个问题是否与夏令时有关(从这里的一些问题中,我看到 Joda Time 可以管理)
我怎样才能获得设备本地时间的时间。
谢谢
【问题讨论】:
标签: java android datetime timezone jodatime