java - 将日期字符串转换为 UTC 格式
问题描述
我有一个从 API 返回的日期字符串。日期采用这种格式。
2018-10-15T17:52:00Z
现在,我想将此字符串转换为 UTC 日期格式。这是我使用的代码,
private static final String DATE_FORMAT = "yyyy-MM-dd'T'HH:mm:ss'Z'";
try {
String expiryDateString = "2018-10-15T17:52:00Z";
final SimpleDateFormat formatter = new SimpleDateFormat(DATE_FORMAT,Locale.US);
formatter.setTimeZone(TimeZone.getTimeZone("UTC"));
return formatter.parse(expiryDateString);
} catch (final ParseException e) {
return null;
}
此方法将日期返回为
2018 年 10 月 15 日星期一 13:52:00 EDT
我不能使用 Java 8 函数。有什么方法可以在不使用 Java 8 方法的情况下将字符串转换为 UTC 日期时间?
解决方案
2018 年 10 月 15 日星期一 13:52:00 EDT
是 date.toString() - Date 类的结果。
日期被正确解析,只是显示方式不同。如果要检查解析是否正确,可以这样检查:
String expiryDateString = "2018-10-15T17:52:00Z";
final SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'", Locale.US);
formatter.setTimeZone(TimeZone.getTimeZone("UTC"));
Date date = formatter.parse(expiryDateString);
assertEquals(expiryDateString, formatter.format(date));
推荐阅读
- titanium - Appcelerator 钛合金构建错误构建失败 CopySwiftLibs
- linux-kernel - 如何将 MQTT 代理集成到基于 Linux 的 raspbian 内核源代码中并在 Ubuntu 20.04.2 中交叉编译?
- javascript - 嵌套的 Mongo DB 查询
- php - 在base64_decode解码后密码为空
- docker - 在 AWS EC2 上执行爬虫后如何删除日志或数据?
- python - Moviepy 扭曲连接(纵向)视频
- javascript - 映射嵌套数组以在 React Native 中呈现
- jquery - 使用按钮编辑选择列表复选框项目 Asp.net core
- python - 在dict中将键从float转换为int in dict in list in dict
- c - “printf”可以用作变量名吗?