我不确定是否已回答此问题,但是谁能告诉我如何将“ 2019-07-14T18:30:00.000Z”转换为“ 2019-07-14 04:30:00” PM”使用DateTimeFormatter或Java中的任何其他库?基本上,输出日期时间应具有AM / PM格式的时间。
答案 0 :(得分:3)
通过使用ZonedDateTime
,您可以解析输入的UTC
格式字符串,然后使用LocalDateTime
和DateTimeFormatter
格式化输出字符串。但是我不确定您在什么基础上输入和输出字符串中的天,月和时差
String date = "2019-07-14T18:30:00.000Z";
ZonedDateTime dateTime = ZonedDateTime.parse(date);
String res = dateTime.withZoneSameInstant(ZoneId.of("//desired zone id")).format(DateTimeFormatter.ofPattern("yyyy-MM-dd hh:mm:ss a"));
答案 1 :(得分:-2)
尝试
String date = "2019-07-14T18:30:00.000Z";
SimpleDateFormat inputFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'");
SimpleDateFormat outputFormat = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss a");
Date parsedDate = inputFormat.parse(date);
String formattedDate = outputFormat.format(parsedDate);
System.out.println(formattedDate);