我有一个字符串,例如:
1517439600000+0100
我想将其转换为以毫秒为单位的unix时间,没有时区。 我该怎么做?
附:
1)我不能使用 substring(0,5)
并向字符串添加 3.6m 毫秒,因为我有很多时区,一次是 +0100,然后是 +0200 等等...
2) 如果更容易转换为常规时间戳,如 YYYY-mm-dd hh:mm:ss 应该没问题。
最佳答案
你可以这样做:
String sign = "+";
String [] parts = time.split(sign);
Long millis = Long.parseLong(parts[0]);
String zoneOffset = sign + parts[1];
LocalDate date = Instant.ofEpochMilli(millis).atZone(ZoneOffset.of(zoneOffset)).toLocalDate();
关于Java - 将带有时区的unix时间(以毫秒为单位)转换为时间戳,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52531649/