CodeGym /Blog Java /Random-PL /Klasa ustawień regionalnych Java
John Squirrels
Poziom 41
San Francisco

Klasa ustawień regionalnych Java

Opublikowano w grupie Random-PL
Byłoby dużo łatwiej, gdyby na całym świecie obowiązywały takie same gniazdka elektryczne, zasada zapisywania liczb i dat. Jednak tak się jeszcze nie stało i programiści muszą wziąć to pod uwagę. W szczególności klasa java.util.Locale umożliwia uwzględnienie specyfiki regionalnych reprezentacji alfabetu, symboli, liczb i dat. W tym artykule przyjrzymy się klasie Java Locale i podamy przykłady jej użycia.

Co to jest lokalizacja

Podczas instalacji systemu operacyjnego Microsoft Windows zostaniesz zapytany o kraj i język. Faktycznie takie momenty kojarzą się z użyciem Locale . Można powiedzieć, że tworzy się obiekt klasy Locale , podając kraj i język. Spowoduje to wyświetlenie innych powiązanych ustawień, takich jak wyświetlanie daty i godziny. Wirtualna maszyna Java pobiera ustawienia regionalne z systemu operacyjnego. Jednakże domyślne ustawienia regionalne w Javie można zmienić przy użyciu specjalnej metody, jeśli jest to konieczne.

Tworzenie obiektów klasy Java Locale

W niektórych krajach ustawienia regionalne są ustawiane przy użyciu stałych, na przykład:
Locale.US
Locale.UK
Dla wszystkich pozostałych krajów obiekt klasy Locale należy utworzyć przy użyciu konstruktora, na przykład:
Locale ukr = new Locale("ukr", "UA");
Istnieje stała Locale.ROOT . Katalog główny reprezentuje ustawienia regionalne, w których język i kraj są równe pustemu ciągowi znaków (""). To ustawienie regionalne jest podstawowym ustawieniem regionalnym dla wszystkich innych ustawień regionalnych. Używany do pisania aplikacji niezależnych od ustawień regionalnych. Weźmy mały przykład.
import java.util.Locale;

public class LocaleExample1 {

   public static void main(String[] args) {
       var uk = Locale.UK;
       System.out.println(uk);
       Locale ua = new Locale("ukr", "UA");
       System.out.println(ua);
          }

   }
Oto dane wyjściowe:
en_GB ukr_UA

Metody klas ustawień regionalnych. Jak określić bieżące ustawienia regionalne lub je zmienić

W Javie istnieje wiele metod klasy Locale . Możesz się ich nauczyć z Javadoc . Tutaj przyjrzymy się tylko niektórym z nich. Możesz określić bieżące ustawienia regionalne za pomocą metody Locale.getDefault() :
Locale current = Locale.getDefault();
Możesz zmienić bieżące ustawienia regionalne bieżącej instancji maszyny JVM za pomocą metody setDefault() :
Locale.setDefault(Locale.CANADA);
Metoda String getCountry() zwraca kod kraju lub regionu dla tego ustawienia regionalnego. Może to być pusty ciąg znaków (dwuliterowy kod ISO 3166 z wielkimi literami) lub 3-cyfrowy kod UN M.49. String getDisplayCountry() zwraca nazwę kraju, w którym znajdują się ustawienia regionalne, odpowiednią do wyświetlenia użytkownikowi. String getDisplayCountry(Locale inLocale) zwraca nazwę kraju, w którym znajdują się ustawienia regionalne, odpowiednią do wyświetlenia użytkownikowi. String getDisplayLanguage() zwraca nazwę języka ustawień regionalnych, która jest odpowiednia do wyświetlania użytkownikowi. String getDisplayLanguage(Locale inLocale) zwraca nazwę języka ustawień regionalnych, która jest odpowiednia do wyświetlania użytkownikowi. String getLanguage() zwraca kod języka ustawień regionalnych .

Przykład klasy ustawień regionalnych

import java.util.Locale;
//Locale Example
public class LocaleExample1 {

   public static void main(String[] args) {
       var uk = Locale.UK;
       System.out.println(uk);
       Locale ua = new Locale("ukr", "UA");
       System.out.println(ua);
       Locale.setDefault(Locale.CANADA);
       Locale current = Locale.getDefault();

       getLocaleInfo(current);
       getLocaleInfo(ua);
       getLocaleInfo(uk);
   }

   private static void getLocaleInfo(Locale current) {
       System.out.println("Country code: " + current.getCountry());
       System.out.println("Name of the Country: " + current.getDisplayCountry());
       System.out.println("Language Code: " + current.getLanguage());
       System.out.println("Language Name: "
               + current.getDisplayLanguage());
       System.out.println();
   }
}
Oto dane wyjściowe:
en_GB ukr_UA Kod regionu: CA Nazwa kraju: Kanada Kod języka: en Nazwa języka: Angielski Kod regionu: UA Nazwa kraju: Ukraina Kod języka: ukr Nazwa języka: ukraiński
Komentarze
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION