在Ruby on Rails中,有一项功能使您可以获取任何Date并打印出它的“很久以前”。

例如:

8 minutes ago
8 hours ago
8 days ago
8 months ago
8 years ago

有没有简单的方法可以在Java中做到这一点?

最佳答案

看一看PrettyTime库。

使用起来非常简单:

import org.ocpsoft.prettytime.PrettyTime;

PrettyTime p = new PrettyTime();
System.out.println(p.format(new Date()));
// prints "moments ago"

您还可以为国际化消息传递语言环境:
PrettyTime p = new PrettyTime(new Locale("fr"));
System.out.println(p.format(new Date()));
// prints "à l'instant"

如评论中所述,Android在 android.text.format.DateUtils 类中内置了此功能。

10-04 21:38