我有一个ISO 8601时间字符串,想要在不使用joda时间的情况下计算到现在的时差。这是怎么做到的?
由于
答案 0 :(得分:1)
使用SimpleDateFormat
解析它以获得Date
,使用Date.getTime()
获取毫秒 - 自 - unix-epoch,然后与System.currentTimeMillis()
进行比较。
如果您的ISO-8601字符串包含时区偏移量,如“-08:00”(它们当然可以),则需要首先删除冒号,然后使用Z
中的SimpleDateFormat
格式说明符。 (在Java 7中,您可以使用X
,但据我所知,这在Android的SimpleDateFormat
版本中不可用。)
答案 1 :(得分:0)
javax.xml.datatype.DatatypeFactory返回的javax.xml.datatype.Duration怎么样?