将日期字符串转换为 UTC 格式
Convert Date String to UTC format
我有一个从 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;
}
此方法返回日期
Mon Oct 15 13:52:00 EDT 2018
我无法使用Java 8 个功能。有什么方法可以在不使用 Java 8 种方法的情况下将字符串转换为 UTC 日期时间?
Mon Oct 15 13:52:00 EDT 2018
是 date.toString() - 日期 class 的结果。
日期解析正确,只是显示方式不同。
如果你想检查解析是否正确,你可以这样检查:
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));
我有一个从 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;
}
此方法返回日期
Mon Oct 15 13:52:00 EDT 2018
我无法使用Java 8 个功能。有什么方法可以在不使用 Java 8 种方法的情况下将字符串转换为 UTC 日期时间?
Mon Oct 15 13:52:00 EDT 2018
是 date.toString() - 日期 class 的结果。
日期解析正确,只是显示方式不同。 如果你想检查解析是否正确,你可以这样检查:
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));