将Joda LocalDateTime转换为Unix时间戳

Den*_*gin 8 java jodatime unix-timestamp

org.joda.time.LocalDateTime如果本地时间是UTC时区,我如何将a转换为Unix时间戳?

例:

new LocalDateTime(2015, 10, 02, 11, 31, 40)> 1443785500.

Jon*_*eet 21

鉴于您希望Unix时间戳"给定的LocalDateTime,以UTC格式",最简单的方法是DateTime通过指定DateTimeZonefor UTC 将其转换为a ,并将其转换为:

LocalDateTime local = new LocalDateTime(2015, 10, 02, 11, 31, 40);
DateTime utc = local.toDateTime(DateTimeZone.UTC);
long secondsSinceEpoch = utc.getMillis() / 1000;
Run Code Online (Sandbox Code Playgroud)

注意这里使用秒作为Unix时间戳 - 其他API(例如java.util.Date)可能需要自Unix时代以来的毫秒数.