Класс DateTimeFormatter
Класс DateTimeFormatter используется для форматирования
и разбора объектов даты и времени, таких как LocalDate,
LocalTime и LocalDateTime. Он позволяет
преобразовать дату в строку по заданному шаблону и
наоборот - разобрать строку в объект даты. Класс является
неизменяемым и потокобезопасным. Экземпляр создается
через статический метод ofPattern, в который
передается строка шаблона, например "dd.MM.yyyy".
Также доступны готовые константы, такие как ISO_LOCAL_DATE
и ISO_LOCAL_DATE_TIME.
Синтаксис
DateTimeFormatter.ofPattern(pattern)
formatter.format(temporal)
formatter.parse(text)
Пример
Давайте создадим форматтер с шаблоном "dd.MM.yyyy"
и отформатируем текущую дату:
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
public class Main
{
public static void main(String[] args)
{
LocalDate date = LocalDate.of(2025, 12, 31);
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd.MM.yyyy");
String res = formatter.format(date);
System.out.println(res);
}
}
Результат выполнения кода:
"31.12.2025"
Пример
Давайте разберем строку в объект даты с помощью
метода parse:
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
public class Main
{
public static void main(String[] args)
{
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd.MM.yyyy");
LocalDate date = LocalDate.parse("15.06.2024", formatter);
System.out.println(date);
}
}
Результат выполнения кода:
"2024-06-15"
Пример
Давайте отформатируем дату и время с помощью готовой
константы ISO_LOCAL_DATE_TIME:
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
public class Main
{
public static void main(String[] args)
{
LocalDateTime dateTime = LocalDateTime.of(2025, 1, 15, 10, 30);
DateTimeFormatter formatter = DateTimeFormatter.ISO_LOCAL_DATE_TIME;
String res = formatter.format(dateTime);
System.out.println(res);
}
}
Результат выполнения кода:
"2025-01-15T10:30:00"
Смотрите также
-
метод
ofPattern,
который создает форматтер по шаблону -
метод
format,
который форматирует дату в строку -
метод
parse,
который разбирает строку в дату -
класс
LocalDateTime,
который представляет дату и время