Метод toFormat
Метод toFormat
класса DateTimeFormatter
преобразует форматтер даты и времени в объект java.text.Format
.
Это позволяет использовать современный DateTimeFormatter
с устаревшими API, которые работают с java.text.Format
.
Метод возвращает объект Format
, который можно использовать для форматирования и парсинга дат.
Импорт
import java.time.format.DateTimeFormatter
import java.text.Format
Синтаксис
fun toFormat(): Format
fun toFormat(parseQuery: TemporalQuery<*>?): Format
Пример
Преобразуем DateTimeFormatter
в Format
и используем его для форматирования даты:
import java.time.LocalDate
import java.time.format.DateTimeFormatter
import java.text.Format
val date = LocalDate.of(2025, 12, 31)
val formatter = DateTimeFormatter.ofPattern("dd/MM/yyyy")
val format: Format = formatter.toFormat()
val formattedDate = format.format(date)
println(formattedDate)
Результат выполнения кода:
String "31/12/2025"
Пример
Используем toFormat
с параметром для парсинга даты:
import java.time.LocalDate
import java.time.format.DateTimeFormatter
import java.time.temporal.TemporalQuery
import java.text.Format
val formatter = DateTimeFormatter.ofPattern("dd/MM/yyyy")
val query: TemporalQuery<LocalDate> = LocalDate::from
val format: Format = formatter.toFormat(query)
val parsedDate = format.parseObject("31/12/2025") as LocalDate
println(parsedDate)
Результат выполнения кода:
String "2025-12-31"
Пример
Интегрируем современный форматтер с устаревшим кодом, использующим SimpleDateFormat
:
import java.time.LocalDateTime
import java.time.format.DateTimeFormatter
import java.text.Format
val dateTime = LocalDateTime.now()
val formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")
val format: Format = formatter.toFormat()
// Использование с устаревшим API
val legacyFormatted = format.format(dateTime)
println("Legacy format: $legacyFormatted")
Результат выполнения кода:
String "Legacy format: 2025-12-31 15:30:45"
Смотрите также
-
функцию
ofPattern
классаDateTimeFormatter
,
которая создает форматтер по шаблону -
функцию
format
классаDateTimeFormatter
,
которая форматирует дату и время в строку -
функцию
parse
классаDateTimeFormatter
,
которая преобразует строку в объект даты и времени -
класс
LocalDateTime
,
который представляет дату и время