Joda-time:将 jodaTime 转换为时区
Joda-time: convert jodaTime with timezone
请帮我处理这个案例:
- 从前端选择一个日期,比如 3/8/2016 05:53:00
- 用户的时区是 GMT-08:00,加上 8 小时,将其保存到 DB 为 3/8/2016 13:53:00
- B 用户的时区是 GMT-10:00,加上 10 小时,将其保存到 DB 为 3/8/2016 15:53:00
- A 并且在我们从数据库转换日期后将在页面上看到 3/8/2016 05:53:00。
我想我们可以写一个工具来转换日期时间,加上或减去它。
有实现它的标准方法吗?
选择日期并加上一次进行转换。
所有 Joda 时区都是 here:
示例:
final DateTime dt = new DateTime();
// translate to Honolulu local time
final DateTime dtVancouver = dt.withZone(DateTimeZone.forID("Etc/GMT+8"));
final DateTime dtHonolulu = dt.withZone(DateTimeZone.forID("Etc/GMT+10"));
System.out.println(dt);
System.out.println(dtVancouver);
System.out.println(dtHonolulu);
请帮我处理这个案例:
- 从前端选择一个日期,比如 3/8/2016 05:53:00
- 用户的时区是 GMT-08:00,加上 8 小时,将其保存到 DB 为 3/8/2016 13:53:00
- B 用户的时区是 GMT-10:00,加上 10 小时,将其保存到 DB 为 3/8/2016 15:53:00
- A 并且在我们从数据库转换日期后将在页面上看到 3/8/2016 05:53:00。
我想我们可以写一个工具来转换日期时间,加上或减去它。 有实现它的标准方法吗?
选择日期并加上一次进行转换。 所有 Joda 时区都是 here:
示例:
final DateTime dt = new DateTime();
// translate to Honolulu local time
final DateTime dtVancouver = dt.withZone(DateTimeZone.forID("Etc/GMT+8"));
final DateTime dtHonolulu = dt.withZone(DateTimeZone.forID("Etc/GMT+10"));
System.out.println(dt);
System.out.println(dtVancouver);
System.out.println(dtHonolulu);