日期解析。如何解析此日期格式?

时间:2017-10-18 13:17:11

标签: android date date-parsing

如何解析此日期格式:

  

“/日期(1514728800000 + 0300)/”

我不知道这个号码的含义是什么,或+号的含义。

3 个答案:

答案 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