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