如果本地时间是UTC时区,如何将org.joda.time.LocalDateTime
转换为Unix时间戳?
示例:
new LocalDateTime(2015, 10, 02, 11, 31, 40)
> 1443785500
。
答案 0 :(得分:21)
鉴于您希望Unix时间戳“给定的LocalDateTime
,在UTC中”最简单的方法是通过为UTC指定DateTime
将其转换为DateTimeZone
,并转换的是:
LocalDateTime local = new LocalDateTime(2015, 10, 02, 11, 31, 40);
DateTime utc = local.toDateTime(DateTimeZone.UTC);
long secondsSinceEpoch = utc.getMillis() / 1000;
注意这里使用秒作为Unix时间戳 - 其他API(例如java.util.Date
)可能需要自Unix纪元以来的毫秒数。