Метод getLocale
Метод getLocale класса DateTimeFormatter возвращает локаль, которая была установлена для данного форматтера.
Локаль влияет на отображение названий месяцев, дней недели и других локалезависимых элементов даты и времени.
Импорт
import java.time.format.DateTimeFormatter
import java.util.Locale
Синтаксис
fun getLocale(): Locale
Пример
Создадим форматтер с локалью US и получим его локаль:
val formatter = DateTimeFormatter.ofPattern("MMMM d, yyyy", Locale.US)
val locale = formatter.getLocale()
println(locale)
Результат выполнения кода:
String "en_US"
Пример
Создадим форматтер с локалью GERMANY и проверим его локаль:
val formatter = DateTimeFormatter.ofPattern("d. MMMM yyyy", Locale.GERMANY)
val locale = formatter.getLocale()
val country = locale.getCountry()
val language = locale.getLanguage()
println("Country: $country, Language: $language")
Результат выполнения кода:
String "Country: DE, Language: de"
Пример
Сравним форматирование даты с разными локалями:
import java.time.LocalDate
val date = LocalDate.of(2025, 12, 31)
val usFormatter = DateTimeFormatter.ofPattern("MMMM d, yyyy", Locale.US)
val frenchFormatter = DateTimeFormatter.ofPattern("d MMMM yyyy", Locale.FRENCH)
val usFormatted = date.format(usFormatter)
val frenchFormatted = date.format(frenchFormatter)
println("US: $usFormatted")
println("French: $frenchFormatted")
println("US locale: " + usFormatter.getLocale())
println("French locale: " + frenchFormatter.getLocale())
Результат выполнения кода:
String "US: December 31, 2025"
String "French: 31 décembre 2025"
String "US locale: en_US"
String "French locale: fr"
Пример
Проверим локаль форматтера по умолчанию:
val defaultFormatter = DateTimeFormatter.ISO_LOCAL_DATE
val locale = defaultFormatter.getLocale()
println(locale)
Результат выполнения кода:
String ""
Смотрите также
-
метод
withLocaleклассаDateTimeFormatter,
который устанавливает локаль для форматтера -
метод
ofPatternклассаDateTimeFormatter,
который создает форматтер с указанным шаблоном -
метод
formatклассаDateTimeFormatter,
который форматирует дату и время в строку