将ISO 8601日期/时间转换为“ x分钟前”类型的字符串

问题描述

|| 因此,我有一个ISO 8601日期/时间戳,例如\“ 2011-04-21T17:07:50-07:00 \”,并且我想将其转换为类似于\“ 23分钟前\”之类的这样的。是否有少量的Java代码或库可以轻松完成类似的工作? 谢谢!     

解决方法

首先,将其解析为Date对象。然后,创建一个具有当前日期/时间的新日期。然后,在两个Date对象上调用
.getTime()
方法,并减去。现在您的时间以毫秒为单位。 您可以从那里进行自己的数学运算,因为在开始担心leap年之前,这都是很容易的除法。     ,您在寻找什么被称为模糊时间。这个词的快速Google找到了jFuzzyDate     ,Joda是一个很棒的时间库,应该具有执行此操作所需的所有方法:http://joda-time.sourceforge.net/。