我有一个日期字段(lastUpdated)。我想将此日期转换为人类可读的格式,例如“今天”,“1天前”,“2天前”,...
我正在使用Android库中包含的android.text.format.DateUtils API。
这是我的尝试:
DateUtils.getRelativeDateTimeString(context,
lastUpdated.getTime(),
DateUtils.DAY_IN_MILLIS,
DateUtils.WEEK_IN_MILLIS,
DateUtils.FORMAT_SHOW_YEAR);
这是输出:
0 day ago, 12:00am
yesterday, 9:30am
2 days ago, 1:30pm
Sep 4, 12:30pm
我期望的结果:(无时间信息)
0 day ago --------- This should be 'today'
yesterday
2 days ago
Sep 4
请注意,如果我从lastUpdated清除时间。它将显示“12:00 am”以获取时间信息。
有人有什么想法吗?有什么办法可以减少输出时间?
谢谢!
最佳答案
您可以为此使用DateUtils.getRelativeTimeSpanString:
long now = System.currentTimeMillis();
DateUtils.getRelativeTimeSpanString(lastUpdated.getTime(), now, DateUtils.DAY_IN_MILLIS);