java - 更改 Youtube 数据 API PublishAt 日期格式
问题描述
我有一个 Android 应用程序,我使用 Youtube Data API V3 来加载某些频道内容。显示视频、视频标题和视频发布日期,当前视频发布日期以这种格式显示 2015-01-21T11:20:27.751+00:00 如果可能,我想将其更改为 yyyy-MM-dd 格式,您的帮助将不胜感激。日期代码如下。
TextView textViewDate = holder.textViewDate;
textViewDate.setText(object.getPublishedAt());
代码getPublishedAt()是从 Youtube Data API 加载的。
解决方案
由于该方法getPublishedAt()
似乎返回 的实例com.google.api.client.util.DateTime
,该实例没有仅日期表示,因此您可能必须对其进行转换。
我会使用这样getValue()
的DateTime
using来转换它java.time
:
long epochMillis = object.getPublishedAt().getValue();
ZonedDateTime zonedDateTime = ZonedDateTime.ofInstant(Instant.ofEpochMilli(epochMillis),
ZoneId.systemDefault());
String date = zonedDateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"));
textViewDate.setText(date);
您正在为 Android 编码,因此java.time
(从 Java 8 开始)的可用性取决于您的应用程序支持的 API 级别。您可以使用ThreeTenABP来支持低于 26 的级别。