Как округлить дату, которая в UTC?

Я пытаюсь округлить объект даты до ближайшей даты.

например: пусть дата = 12 марта 4:00 UTC (смещение = 4:00).

Я хочу округлить дату до ближайшей даты после преобразования ее в местное время с предоставленной информацией о часовом поясе (TZ).

Так что теперь, если я конвертирую эту дату с TZ как America/Los_Angeles, дата станет: 11 марта 9 вечера. Теперь я хочу округлить это до ближайшей даты. Так должно быть 12 марта 00:00:00.

Как мне это сделать?

Объект date не хранит информацию TZ. Он хранит только количество миллисекунд после эпохи. Поэтому я не могу использовать Apache DateUtils для конвертации, потому что я хочу конвертировать только после того, как преобразовал объект даты в местное время.

Единственный способ получить местное время для объекта даты - использовать DateFormatter и передавать информацию TZ. Это вернет мне строку в соответствии с форматом, переданным форматеру даты. Как мне округлить эту строку до ближайшей даты? Я знаю, как разобрать это вручную, а затем сделать это. Тем не менее, я ищу более чистый, простой и легкий способ сделать это.

Есть ли такой способ?

Спасибо!

0 ответов

Другие вопросы по тегам