DateUtils.getRelativeTimeSpanString没有给出正确的结果

时间:2016-08-21 00:21:41

标签: java android

目前,我正在使用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;
}

请帮我找到我想要的正确格式。感谢。

1 个答案:

答案 0 :(得分:0)

我的愚蠢错误。

发生这种情况的原因是由于这一行

CharSequence time = DateUtils.getRelativeTimeSpanString(System.currentTimeMillis(),postTime,DateUtils.MINUTE_IN_MILLIS,DateUtils.FORMAT_ABBREV_RELATIVE);

我切换了System.currentTimeMillis(),postTime的位置,然后返回了正确的格式。