目前,我正在使用DateUtils.getRelativeTimeSpanString
来获得类似的输出。
8 minutes ago
8 hours ago
但它返回了。我的代码完全在此post
中In 4 hr
In 5 hr
这是我的代码
long postTime = getDateInMillis(pubDate);
CharSequence time = DateUtils.getRelativeTimeSpanString(System.currentTimeMillis(),postTime,DateUtils.MINUTE_IN_MILLIS,DateUtils.FORMAT_ABBREV_RELATIVE);
我的getDateInMillis方法
public static long getDateInMillis(String srcDate) {
SimpleDateFormat formatter = new SimpleDateFormat("EEE, d MMM yyyy HH:mm:ss Z",Locale.getDefault());
long dateInMillis = 0;
try {
Date date = formatter.parse(srcDate);
dateInMillis = date.getTime();
return dateInMillis;
}
catch (java.text.ParseException e) {
e.printStackTrace();
}
return 0;
}
请帮我找到我想要的正确格式。感谢。
答案 0 :(得分:0)
我的愚蠢错误。
发生这种情况的原因是由于这一行
CharSequence time = DateUtils.getRelativeTimeSpanString(System.currentTimeMillis(),postTime,DateUtils.MINUTE_IN_MILLIS,DateUtils.FORMAT_ABBREV_RELATIVE);
我切换了System.currentTimeMillis(),
和postTime
的位置,然后返回了正确的格式。