Joda Time - 时区不同

2022-01-16 00:00:00 datetime timezone java jodatime

我想用 Joda 时间将当前时间转换为特定时区的时间.

I want to convert the current time to the time in a specific timezone with Joda time.

有没有办法将 DateTime time = new DateTime() 转换为特定时区,或者可能获取 time.getZone() 之间的小时数差异和另一个 DateTimeZone 然后执行 time.minusHourstime.plusHours?

Is there a way to convert DateTime time = new DateTime() to a specific timezone, or perhaps to get the number of hours difference between time.getZone() and another DateTimeZone to then do time.minusHours or time.plusHours?

推荐答案

我想用 Joda 时间将当前时间转换为特定时区的时间.

I want to convert the current time to the time in a specific timezone with Joda time.

不清楚您是否已经得到当前时间.如果你已经得到它,你可以使用 withZone:

It's not really clear whether you've already got the current time or not. If you've already got it, you can use withZone:

DateTime zoned = original.withZone(zone);

如果您只是获取当前时间,请使用 适当的构造函数:

If you're just fetching the current time, use the appropriate constructor:

DateTime zoned = new DateTime(zone);

或使用 DateTime.now:

DateTime zoned = DateTime.now(zone);

相关文章