我需要将Twitter时间戳转换为Java Date对象, 以下是Timestampe值的示例:" 2015-01-06T21:07:00Z"
你能给我一些java代码(标准Java)的样本吗?
谢谢
答案 0 :(得分:2)
我建议您利用Java 8中引入的新日期/时间API,特别是Instant
,如下所示:
Instant.parse("2015-01-06T21:07:00Z");
然后,您可以执行大量操作,但请记住该对象是不可变的,因此对实例的任何更改(不链接)都必须存储在单独的变量中。
答案 1 :(得分:0)
实际上它是UTC时区的ISO 8601格式。
它也符合XML DateTime格式。
因此,要从中获取实际java.util.Calendar
或java.util.Date
,您只需在JDK中使用
Calendar twitterCalendar = javax.xml.bind.DatatypeConverter.parseDateTime("2015-01-06T21:07:00Z");
Date twitterDate = javax.xml.bind.DatatypeConverter.parseDateTime("2015-01-06T21:07:00Z").getTime();
请注意:java.util.Date
中没有时区信息。您的字符串是UTC格式,因此如果您尝试打印twitterDate的值,您将在计算机/服务器的TimeZone中看到日期/时间。 twitterDate的实际价值仍然保持不变
毫秒值,是1970年1月1日00:00:00.000 GMT(格里高利)的纪元的偏移量。