Вебинары Разобраться в IT Реферальная программа
Программирование Аналитика Дизайн Маркетинг Управление проектами
10 Июл 2023
2 мин
850

Изменение формата даты в строке Java

Часто разработчики сталкиваются с задачей преобразования строки, представляющей дату и время, в другой формат. Например, имеется строка вида «2022-03-15

Часто разработчики сталкиваются с задачей преобразования строки, представляющей дату и время, в другой формат. Например, имеется строка вида «2022-03-15 18:45:00.0», и требуется преобразовать её в формат «YYYY-MM-DD», то есть в итоге получить строку «2022-03-15».

В Java для работы с датами и временем часто используется класс SimpleDateFormat из пакета java.text. Этот класс позволяет преобразовывать строку с датой в объект Date и наоборот.

Вот пример кода, который выполняет такое преобразование:

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

public class Main {
    public static void main(String[] args) {
        String date_s = "2022-03-15 18:45:00.0"; 
        SimpleDateFormat dt = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.S"); 
        try {
            Date date = dt.parse(date_s); 
            SimpleDateFormat dt1 = new SimpleDateFormat("yyyy-MM-dd");
            String result = dt1.format(date);
            System.out.println(result);
        } catch (ParseException e) {
            e.printStackTrace();
        }
    }
}

В этом коде сначала создается объект SimpleDateFormat с форматом, соответствующим исходной строке. Затем строка преобразуется в объект Date методом parse(). После этого создается второй объект SimpleDateFormat с желаемым форматом вывода. И наконец, исходная дата в новом формате выводится на экран методом format().

Однако, при работе с датами и временем стоит быть внимательным. В формате используются определенные символы для обозначения года, месяца, дня, часа, минуты и секунды. Например, yyyy обозначает четырехзначный год, MM — месяц, dd — день, HH — часы в 24-часовом формате, mm — минуты, ss — секунды, S — миллисекунды. Если указать неверные символы, результат может быть непредсказуемым.

В целом, SimpleDateFormat — это весьма мощный инструмент для работы с датами и временем в Java, который позволяет выполнять большинство типовых задач по преобразованию и форматированию дат.

Добавить комментарий