使用 Android DateUtils API 在 Android 中将相对日期格式化为人类可读的格式

2023-12-19

我有一个日期字段(lastUpdated)。我想将此日期翻译为人类可读的格式,例如“今天”、“1 天前”、“2 天前”……

我在用android.text.format.DateUtils http://developer.android.com/reference/android/text/format/DateUtils.html#getRelativeDateTimeString(android.content.Context,%20long,%20long,%20long,%20int)Android 库中包含的 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

请注意,如果我清除了上次更新的时间。它将显示“12:00am”以获取时间信息。

有人有什么想法吗?有什么办法可以从输出中删除时间吗?

谢谢你!


您可以使用DateUtils.getRelativeTimeSpanString http://developer.android.com/reference/android/text/format/DateUtils.html#getRelativeTimeSpanString(long,%20long,%20long)为了那个原因:

long now = System.currentTimeMillis();
DateUtils.getRelativeTimeSpanString(lastUpdated.getTime(), now, DateUtils.DAY_IN_MILLIS);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 Android DateUtils API 在 Android 中将相对日期格式化为人类可读的格式 的相关文章

随机推荐