如何解析此日期格式:
“/日期(1514728800000 + 0300)/”
我不知道这个号码的含义是什么,或+
号的含义。
答案 0 :(得分:1)
部分答案:数字为epoch time。
这是自1970年1月1日UTC以来的秒数
您可以将此值传递给java.util.Date的构造函数,它将为您提供具有正确值的li
对象。
+ 0300不清楚,可能是对不同时区的引用。
答案 1 :(得分:1)
我不确定+0300,但您可以使用以下功能将纪元时间转换为日期:
Date date = new Date(Long.parseLong(myDateToParse.replaceAll("[^\\d-]", "")));
SimpleDateFormat sdf = new SimpleDateFormat("yyyy.MM.dd HH:mm:ss", Locale.DEFAULT);
答案 2 :(得分:1)
以下是解析此代码的代码,假设您有 unixtimestamp_zoneoffset
String inputStr = "1514728800000+0300";
String[] splitStr = inputStr.split("[+-]");
String offsetSign = inputStr.indexOf("+")>0 ? "+" : "-";
ZonedDateTime captureTime = Instant.ofEpochMilli(Long.valueOf(splitStr[0])).atZone(ZoneOffset.of(offsetSign+splitStr[1]));
返回的值是 2017-12-31T17:00 + 03:00