Как отформатировать дату в формат с сокращенным часовым поясом в Java? - PullRequest
0 голосов
/ 09 июня 2018

У меня есть строка даты с этим форматом 2019-01-01T18:46:19, и я хочу преобразовать ее в этот формат 06:46 pm AEST 01/01/19 , например, с сокращенным часовым поясом Австралии .Как я могу сделать это на Java?

1 Ответ

0 голосов
/ 09 июня 2018

Вы можете использовать более новый java.time API для этой задачи:

import java.time.LocalDateTime;
import java.time.ZonedDateTime;
import java.time.ZOneId;
import java.time.format.DateTimeFormatter;

ZoneId zone = ZoneId.of("Australia/Sydney");
LocalDateTime ldt = LocalDateTime.parse("2019-01-01T18:46:19") ;
ZonedDateTime zdt = ZonedDateTime.of(ldt, zone);
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("hh:mm a z dd/MM/yy");
System.out.println(dtf.format(zdt));

Выход:

06: 46 PM AEDT 01/01/19

Примечание: ваш формат в вашем вопросе неоднозначен относительно того, хотите ли вы указать день / месяц / год или американский месяц / день / год, но я предполагаю, что Австралия следует за Великобританией, предпочитая день / месяц / год.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...