使用PrettyTime库格式化时间

时间:2018-01-04 12:09:00

标签: java android date prettytime

处理新闻RSS Feed,并尝试按时间显示它们(如2分钟前,1个月前)。我正在使用PrettyTime库来安卓Android。它适用于此类日期格式

<pubDate>Thu, 04 Jan 2018 11:00:16 +0000</pubDate>

但是,如果尝试解析,则采用以下格式

<updated>2017-12-30T11:10:44+00:00</updated>

应用程序正在崩溃。 我如何解析RecyclerView中的日期

PrettyTime p = new PrettyTime(Locale.ENGLISH);
@Override
public void onBindViewHolder(final RecyclerViewAdapter.ViewHolder holder, int position) {
    setupImageLoader();

    final News newsItem = newsItems.get(position);
    String imgUrl = newsItem.getNewsImage();
    holder.date_updated.setText(p.format(new Date(newsItem.getUpdated())));
    holder.title.setText(newsItem.getTitle());

我有什么想法可以解决这个问题吗?谢谢!!

1 个答案:

答案 0 :(得分:1)

那是因为Date类不了解给定的日期格式。您可以使用SimpleDateFormat类来解析日期。对于您的示例代码将是下一个:

SimpleDateFormat format = new SimpleDateFormat("y-MM-dd'T'H:m:ssXXX");
Date date = new Date(format.parse(newsItem.getUpdated()));