如何解释Twitter DM

时间:2016-07-23 21:35:15

标签: java twitter time

如果我从Twitter中的Direct Message页面保存源html,我会发现类似这样的内容,其中似乎包含详细的时间戳:

< span class =“_ timestamp”data-aria-label-part =“last”data-time =“1469168058”data-long-form =“true”data-include-sec =“true”> Jul 22℃; /跨度>

如果我读取这些数据(例如,在Java中,仅包括java.io. *),有一种方法可以将data-time="1469168058"中的数字转换为日期和时间,包括小时和分钟,也许是秒?

1 个答案:

答案 0 :(得分:0)

Unix / Posix时间

大约一百五十万的计数通常意味着自1970年第一个时刻UTC以来的整秒数。这通常称为Unix time or Posix time

java.time

在Java中,UTC时间轴上的分辨率为nanosecond的时刻由Instant类表示。

long input = 1_469_168_058L;
Instant instant = Instant.ofEpochSecond ( input );

要通过特定时区的镜头查看同一时刻,请应用ZoneId生成ZonedDateTime个对象。

ZoneId zoneId = ZoneId.of ( "America/Chicago" );
ZonedDateTime zdt = instant.atZone ( zoneId );

转储到控制台。

System.out.println ( "input: " + input + " | instant: " + instant + " | zdt: " + zdt );
  

输入:1469168058 |时间:2016-07-22T06:14:18Z | zdt:2016-07-22T01:14:18-05:00 [美国/芝加哥]

此结果与数据块中包含的7月22日相匹配。