Locale Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Un Locale
oggetto rappresenta un'area geografica, politica o culturale specifica.
[Android.Runtime.Register("java/util/Locale", DoNotGenerateAcw=true)]
public sealed class Locale : Java.Lang.Object, IDisposable, Java.Interop.IJavaPeerable, Java.IO.ISerializable, Java.Lang.ICloneable
[<Android.Runtime.Register("java/util/Locale", DoNotGenerateAcw=true)>]
type Locale = class
inherit Object
interface ISerializable
interface IJavaObject
interface IDisposable
interface IJavaPeerable
interface ICloneable
- Ereditarietà
- Attributi
- Implementazioni
Commenti
Un Locale
oggetto rappresenta un'area geografica, politica o culturale specifica. Un'operazione che richiede un Locale
oggetto per eseguire l'attività è denominata <em>con< distinzione delle impostazioni locali/em> e usa per Locale
personalizzare le informazioni per l'utente. Ad esempio, la visualizzazione di un numero è un'operazione sensibile alle impostazioni locali— il numero deve essere formattato in base alle dogane e alle convenzioni del paese, dell'area geografica o delle impostazioni cultura dell'utente.
La Locale
classe implementa IETF BCP 47, costituita da RFC 4647 "Corrispondenza dei tag di linguaggio" e RFC 5646 "Tags for Identification Languages" con supporto per LDML (UTS#35, "Unicode Locale Data Markup Language") BCP 47-compatible extensions for locale data exchange.
Un Locale
oggetto è costituito logicamente dai campi descritti di seguito.
<dl><dt>"def_language"><b>language</b></dt>
<dd>ISO 639 alfa-2 o alfa-3 codice di lingua o sottotag di lingua registrata fino a 8 lettere alfa (per miglioramenti futuri). Quando un linguaggio ha sia un codice alfa-2 che un codice alfa-3, è necessario usare il codice alfa-2. È possibile trovare un elenco completo dei codici di lingua validi nel Registro dei subtag della lingua IANA (cercare "Tipo: lingua"). Il campo lingua non fa distinzione tra maiuscole e minuscole, ma Locale
viene sempre canonizzato in lettere minuscole.</Dd>
<I valori di lingua dd>Ben formato hanno il formato [a-zA-Z]{2,8}
. Si noti che questa non è la produzione completa del linguaggio BCP47, poiché esclude l'estremità. Non sono necessari perché i moderni codici linguistici a tre lettere li sostituiscono.</Dd>
<Esempio dd>: "en" (inglese), "ja" (giapponese), "kok" (Konkani)</dd>
<dt>"def_script"><b>script</b></dt>
<dd>ISO 15924 codice script alfa-4. È possibile trovare un elenco completo di codici di script validi nel Registro sottotag del linguaggio IANA (cercare "Type: script"). Il campo script è senza distinzione tra maiuscole e minuscole, ma Locale
sempre canonizza al maiuscolo (la prima lettera è maiuscola e il resto delle lettere è minuscolo).</Dd>
<i valori dello script dd>Ben formato hanno il modulo [a-zA-Z]{4}
</dd>
<Esempio dd>: "Latn" (latino), "Cyrl" (Cirillico)</dd>
<dt>"def_region"><b>country (region)</b></dt>
<dd>ISO 3166 alfa-2 codice paese o codice di area UN M.49 numerico-3. È possibile trovare un elenco completo di codici di paese e area validi nel Registro sottotag lingua IANA (cercare "Tipo: area"). Il campo paese (area geografica) è senza distinzione tra maiuscole e minuscole, ma Locale
viene sempre canonizzato in maiuscolo.</Dd>
<dd>Valori paese/area geografica con formato corretto hanno il formato [a-zA-Z]{2} | [0-9]{3}
</dd>
<Esempio dd>: "US" (Stati Uniti), "FR" (Francia), "029" (Caraibi)</dd>
<dt>"def_variant"><b variant</b>></dt>
<dd Qualsiasi valore arbitrario>usato per indicare una variante di un Locale
oggetto . Dove sono presenti due o più valori varianti che indicano la propria semantica, questi valori devono essere ordinati in base all'importanza, con prima importanza, separati da sottolineatura('_'). Il campo variant è distinzione tra maiuscole e minuscole.</Dd>
<dd>Nota: IETF BCP 47 pone restrizioni sintattiche sui subtag varianti. Anche I sottotag BCP 47 vengono usati rigorosamente per indicare varianti aggiuntive che definiscono una lingua o i relativi dialetti che non sono coperti da alcuna combinazione di sottotag linguistici, script e aree. È possibile trovare un elenco completo di codici varianti validi nel Registro sottotag del linguaggio IANA (cercare "Type: variant").
Tuttavia, il campo variant in Locale
è stato usato storicamente per qualsiasi tipo di variazione, non solo le varianti del linguaggio. Ad esempio, alcune varianti supportate disponibili negli ambienti di runtime di Java SE indicano comportamenti culturali alternativi, ad esempio il tipo di calendario o lo script numerico. In BCP 47 questo tipo di informazioni, che non identifica la lingua, è supportato da sottotag di estensione o sottotag privati.</Dd>
<i valori varianti di dd>Ben formato hanno il formato SUBTAG (('_'|'-') SUBTAG)*
in cui SUBTAG = [0-9][0-9a-zA-Z]{3} | [0-9a-zA-Z]{5,8}
. (Nota: BCP 47 usa solo trattino ('-') come delimitatore, questo è più leniente.</Dd>
<Esempio dd: "polyton" (greco politonico>), "POSIX"</dd>
<dt>"def_extensions"><b extensions</b>></dt>
<dd>Mappa da chiavi a caratteri singoli a valori stringa, che indicano estensioni separate dall'identificazione della lingua. Le estensioni in Locale
implementano la semantica e la sintassi dei sottotag di estensione BCP 47 e i sottotag privati. Le estensioni sono senza distinzione tra maiuscole e minuscole, ma Locale
canonizza tutte le chiavi di estensione e i valori in minuscolo. Si noti che le estensioni non possono avere valori vuoti.</Dd>
<dd>Le chiavi ben formatte sono caratteri singoli dal set [0-9a-zA-Z]
. I valori ben formati hanno il formato SUBTAG ('-' SUBTAG)*
in cui per la chiave 'x' e per altre chiavi SUBTAG = [0-9a-zA-Z]{2,8}
,ovvero 'x' SUBTAG = [0-9a-zA-Z]{1,8}
consente sottotag a caratteri singoli.</Dd>
<Esempio dd>: key="u"/value="ca-giapponese" (Calendario giapponese), key="x"/value="java-1-7"</dd></dl>
<b Nota:</b>> Anche se BCP 47 richiede la registrazione dei valori di campo nel Registro subtag del linguaggio IANA, la Locale
classe non fornisce funzionalità di convalida. L'unico Builder
controllo verifica se un singolo campo soddisfa il requisito sintattico (è ben formato), ma non convalida il valore stesso. Per informazioni dettagliate, vedere Builder
.
<h3>"def_locale_extension">Impostazioni locali Unicode/estensione< del linguaggio/h3>
UTS#35, "Unicode Locale Data Markup Language" definisce attributi e parole chiave facoltativi per eseguire l'override o perfezionare il comportamento predefinito associato a impostazioni locali. Una parola chiave è rappresentata da una coppia di chiavi e tipo. Ad esempio, "nu-thai" indica che le cifre locali thai (value:"thai") devono essere usate per la formattazione dei numeri (chiave:"nu").
Le parole chiave vengono mappate a un valore di estensione BCP 47 usando la chiave di estensione 'u' (#UNICODE_LOCALE_EXTENSION
). L'esempio precedente" "nu-thai", diventa l'estensione "u-nu-thai".
Pertanto, quando un Locale
oggetto contiene attributi delle impostazioni locali Unicode e parole chiave, getExtension(UNICODE_LOCALE_EXTENSION)
restituirà una stringa che rappresenta queste informazioni, ad esempio "nu-thai". La Locale
classe fornisce #getUnicodeLocaleAttributes
anche , #getUnicodeLocaleKeys
e #getUnicodeLocaleType
che consentono di accedere direttamente agli attributi delle impostazioni locali Unicode e alle coppie chiave/tipo. Se rappresentato come stringa, l'estensione delle impostazioni locali Unicode elenca gli attributi alfabeticamente, seguiti da sequenze chiave/tipo con chiavi elencate alfabeticamente (l'ordine dei sottotag che comprendono il tipo di una chiave viene risolto quando il tipo è definito)
Una chiave delle impostazioni locali ben formata ha il formato [0-9a-zA-Z]{2}
. Un tipo di impostazioni locali ben formato ha il formato "" | [0-9a-zA-Z]{3,8} ('-' [0-9a-zA-Z]{3,8})*
(può essere vuoto o una serie di sottotag 3-8 alfanumerne in lunghezza). Un attributo delle impostazioni locali ben formato ha il modulo [0-9a-zA-Z]{3,8}
(è un singolo sottotag con lo stesso modulo di un sottotag di tipo locale).
L'estensione delle impostazioni locali Unicode specifica il comportamento facoltativo nei servizi sensibili alle impostazioni locali. Anche se la specifica LDML definisce varie chiavi e valori, le implementazioni effettive dei servizi sensibili alle impostazioni locali in un ambiente runtime Java potrebbero non supportare specifici attributi delle impostazioni locali Unicode o coppie chiave/tipo.
<h4 Creazione di impostazioni locali</h4>>
Esistono diversi modi per creare un Locale
oggetto.
<h5 Builder</h5>>
Usando Builder
è possibile costruire un Locale
oggetto conforme alla sintassi BCP 47.
<Costruttore< h5/h5>>
La Locale
classe fornisce tre costruttori: <blockquote>
{@link #Locale(String language)}
{@link #Locale(String language, String country)}
{@link #Locale(String language, String country, String variant)}
</blockquote> Questi costruttori consentono di creare un Locale
oggetto con lingua, paese e variante, ma non è possibile specificare script o estensioni.
<Metodi< h5 Factory/h5>>
Il metodo #forLanguageTag
crea un Locale
oggetto per un tag di lingua BCP 47 ben formato.
<costanti h5 locali</h5>>
La Locale
classe fornisce una serie di costanti utili che è possibile usare per creare Locale
oggetti per le impostazioni locali comunemente usate. Ad esempio, il codice seguente crea un Locale
oggetto per la Stati Uniti: <blockquote>
Locale.US
</Blockquote>
<h4"LocaleMatching">Locale Matching</h4>>
Se un'applicazione o un sistema è internazionalizzata e fornisce risorse localizzate per più impostazioni locali, a volte deve trovare una o più impostazioni locali (o tag di lingua) che soddisfano le preferenze specifiche di ogni utente. Si noti che un termine "tag lingua" viene usato in modo intercambiabile con "impostazioni locali" nella documentazione relativa alle impostazioni locali.
Per eseguire la corrispondenza delle impostazioni locali preferite di un utente a un set di tag di linguaggio, RFC 4647 Corrispondenza dei tag di linguaggio definisce due meccanismi: filtro e ricerca. <em>Filtering</> em viene usato per ottenere tutte le impostazioni locali corrispondenti, mentre <em>lookup</em> è quello di scegliere le impostazioni locali corrispondenti migliori. La corrispondenza viene eseguita senza distinzione tra maiuscole e minuscole. Questi meccanismi di corrispondenza sono descritti nelle sezioni seguenti.
La preferenza di un <utente è denominata elenco di priorità del linguaggio< em>> e viene espressa come elenco di intervalli di lingue. Esistono due tipi di intervalli di linguaggio: di base e estesi. Per informazioni dettagliate, vedere Locale.LanguageRange Locale.LanguageRange
.
<h5 Filtro</h5>>
L'operazione di filtro restituisce tutti i tag linguistici corrispondenti. È definito in RFC 4647 come indicato di seguito: "In filtro ogni intervallo di lingue rappresenta il tag di lingua meno specifico , ovvero il tag di lingua con il numero minimo di sottotag) che è una corrispondenza accettabile. Tutti i tag di lingua nel set di tag corrispondenti avranno un numero uguale o maggiore di sottotag rispetto all'intervallo di lingue. Ogni sottotag non jolly nell'intervallo di lingue verrà visualizzato in ogni tag di lingua corrispondente."
Esistono due tipi di filtro: filtro per intervalli di linguaggio di base (denominato "filtro di base") e filtro per gli intervalli di linguaggio estesi (denominato "filtro esteso"). Possono restituire risultati diversi in base al tipo di intervalli linguistici inclusi nell'elenco di priorità della lingua specificato. Locale.FilteringMode
è un parametro per specificare come eseguire il filtro.
<h5 Ricerca</h5>>
L'operazione di ricerca restituisce i tag di lingua corrispondenti migliori. È definito in RFC 4647 come indicato di seguito: "A differenza del filtro, ogni intervallo di linguaggio rappresenta il tag più specifico che è una corrispondenza accettabile. Il primo tag di corrispondenza trovato, in base alla priorità dell'utente, viene considerato la corrispondenza più vicina ed è l'elemento restituito."
Ad esempio, se un elenco di priorità lingua è costituito da due intervalli "zh-Hant-TW"
di lingue e "en-US"
, nell'ordine con priorità, il metodo di ricerca cerca progressivamente i tag di lingua seguenti per trovare il tag di lingua corrispondente migliore. <Blockquote>
1. zh-Hant-TW
2. zh-Hant
3. zh
4. en-US
5. en
</blockquote Se è presente un tag di lingua che corrisponde completamente> a un intervallo di lingue precedente, viene restituito il tag di lingua.
"*"
è l'intervallo di lingue speciali e viene ignorato nella ricerca.
Se più tag di lingua corrispondono come risultato del sottotag '*'
incluso in un intervallo di lingue, il primo tag di lingua corrispondente restituito da un Iterator
oggetto over a un Collection
tag di lingua viene considerato come il migliore corrispondente.
<h4 Uso delle impostazioni locali</h4>>
Dopo aver creato un oggetto, è possibile eseguirne una Locale
query per informazioni su se stesso. Usare getCountry
per ottenere il codice paese (o area geografica) e getLanguage
ottenere il codice del linguaggio. È possibile usare getDisplayCountry
per ottenere il nome del paese adatto per la visualizzazione all'utente. Analogamente, è possibile usare getDisplayLanguage
per ottenere il nome della lingua adatta per la visualizzazione all'utente. In particolare, i getDisplayXXX
metodi sono sensibili alle impostazioni locali e dispongono di due versioni: una che usa le impostazioni locali predefinite Locale.Category#DISPLAY DISPLAY
e una che usa le impostazioni locali specificate come argomento.
Java Platform fornisce una serie di classi che eseguono operazioni sensibili alle impostazioni locali. Ad esempio, la NumberFormat
classe formatta numeri, valuta e percentuali in modo sensibile alle impostazioni locali. Le classi, NumberFormat
ad esempio, dispongono di diversi metodi pratici per la creazione di un oggetto predefinito di tale tipo. Ad esempio, la NumberFormat
classe fornisce questi tre metodi pratici per la creazione di un oggetto predefinito NumberFormat
: <blockquote>
NumberFormat.getInstance()
NumberFormat.getCurrencyInstance()
NumberFormat.getPercentInstance()
</blockquote> Ognuno di questi metodi dispone di due varianti; una con impostazioni locali esplicite e una senza; quest'ultima usa le impostazioni locali predefinite Locale.Category#FORMAT FORMAT
: <blockquote>
NumberFormat.getInstance(myLocale)
NumberFormat.getCurrencyInstance(myLocale)
NumberFormat.getPercentInstance(myLocale)
</blockquote> A Locale
è il meccanismo per identificare il tipo di oggetto (NumberFormat
) che si vuole ottenere. Le impostazioni locali sono <STRONG>just</STRONG> un meccanismo per identificare gli oggetti, <STRONG>not</STRONG> un contenitore per gli oggetti stessi.
<compatibilità< h4/h4>>
Per mantenere la compatibilità con l'utilizzo esistente, i costruttori delle impostazioni locali mantengono il comportamento prima dell'ambiente runtime Java versione 1.7. Lo stesso vale in gran parte per il toString
metodo. Pertanto, gli oggetti Impostazioni locali possono continuare a essere usati come erano. In particolare, i client che analizzano l'output di toString in linguaggio, paese e campi varianti possono continuare a farlo (anche se questo è fortemente sconsigliato), anche se il campo variant avrà informazioni aggiuntive in esso se sono presenti script o estensioni.
BCP 47 impone inoltre restrizioni di sintassi non imposte dai costruttori delle impostazioni locali. Ciò significa che le conversioni tra alcune impostazioni locali e i tag di lingua BCP 47 non possono essere effettuati senza perdere informazioni. Pertanto toLanguageTag
non può rappresentare lo stato delle impostazioni locali la cui lingua, paese o variante non sono conformi a BCP 47.
A causa di questi problemi, è consigliabile che i client si esegrano dalla costruzione di impostazioni locali non conformi e usino invece le forLanguageTag
API e Locale.Builder
. I client che desiderano una rappresentazione stringa delle impostazioni locali complete possono quindi basarsi sempre su toLanguageTag
questo scopo.
<h5>"special_cases_constructor">Casi< speciali/h5>
Per motivi di compatibilità, due impostazioni locali non conformi vengono considerate casi speciali. Si tratta <di b/b e <b<ja_JP_JP
>/>b.>>th_TH_TH
< Questi sono mal formato in BCP 47 poiché le varianti sono troppo brevi. Per semplificare la migrazione a BCP 47, questi vengono trattati appositamente durante la costruzione. Questi due casi (e solo questi) causano un costruttore per generare un'estensione, tutti gli altri valori si comportano esattamente come hanno fatto prima di Java 7.
Java ha usato ja_JP_JP
per rappresentare il giapponese usato in Giappone insieme al calendario imperiale giapponese. Questa opzione è ora rappresentabile usando un'estensione delle impostazioni locali Unicode, specificando la chiave ca
delle impostazioni locali Unicode (per "calendario") e digitare japanese
. Quando il costruttore Locale viene chiamato con gli argomenti "ja", "JP", "JP", l'estensione "u-ca-giapponese" viene aggiunta automaticamente.
Java ha usato th_TH_TH
per rappresentare thai come usato in Thailandia insieme a cifre thai. Questa opzione è ora rappresentabile usando un'estensione delle impostazioni locali Unicode, specificando la chiave nu
delle impostazioni locali Unicode (per "number") e il valore thai
. Quando il costruttore Locale viene chiamato con gli argomenti "th", "TH", "TH", l'estensione "u-nu-thai" viene aggiunta automaticamente.
<h5 Serializzazione</h5>>
Durante la serializzazione, writeObject scrive tutti i campi nel flusso di output, incluse le estensioni.
Durante la deserializzazione, readResolve aggiunge estensioni come descritto in Casi speciali, solo per i due casi th_TH_TH e ja_JP_JP.
<h5 Codici< di lingua legacy/h5>>
Il costruttore delle impostazioni locali ha sempre convertito tre codici linguistici nei moduli precedenti e obsoleti: he
esegue il mapping a , yi
esegue il mapping a iw
ji
e id
esegue il mapping a in
. Questo continua a essere il caso, per non interrompere la compatibilità con le versioni precedenti.
Le API aggiunte nella mappa 1.7 tra i codici di lingua precedenti e nuovi, mantenendo i codici precedenti interni alle impostazioni locali (in modo che e toString
riflettano il codice precedente), ma usando i nuovi codici nelle API del tag di linguaggio BCP 47 (in modo che toLanguageTag
getLanguage
riflettano la nuova). Ciò mantiene l'equivalenza tra impostazioni locali, indipendentemente dal codice o dall'API per crearli. Il meccanismo di ricerca del bundle di risorse predefinito di Java implementa anche questo mapping, in modo che le risorse possano essere denominate usando entrambe le convenzioni, vedere ResourceBundle.Control
.
<h5>Codici di lingua/paese(area)< a tre lettere/h5>
I costruttori Locali hanno sempre specificato che la lingua e il param paese sono due caratteri in lunghezza, anche se in pratica hanno accettato qualsiasi lunghezza. La specifica è stata ora rilassata per consentire codici linguistici di due-otto caratteri e paese (area geografica) di due a tre caratteri, e in particolare, codici di lingua a tre lettere e codici di area a tre cifre come specificato nel Registro sottotag del linguaggio IANA. Per la compatibilità, l'implementazione non impone ancora un vincolo di lunghezza.
"locale_data"><h4 Dati locali</h4>>
Si noti che i dati delle impostazioni locali provengono esclusivamente da ICU. I provider di servizi locali forniti dall'utente (usando i java.text.spi
meccanismi o java.util.spi
) non sono supportati.
Ecco le versioni di ICU (e le versioni CLDR e Unicode corrispondenti) usate in varie versioni di Android: <table BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="<>tr><td>Android 1.5 (Cupcake)/Android 1 1.6 (Donut)/Android 2.0 (Eclair)/td td ICU 3.8</><td td>CLDR 1.5/td>><tdUnicode 5.0<</td></tr><tr>><td Android 2.2 (Froyo)<<><>/td><>td ICU 4.2</td td><>CLDR 1.7</td<>td>Unicode 5.1</td></tr><td>><Android 2.3 (Gingerbread)/Android 3.0 (Honeycombb)/td td>ICU 4.4><<>/td tdCLDR 1.8</td><td> Unicode 5.2</td></tr><tr><>td Android 4.0 (Ice Cream Sandwich)<<></td><td td>ICU 4.6<></td td>CLDR 1.9<<>>/td tdUnicode 6.0</td></tr><tr>><td Android 4.1 (Jelly Bean)><</td tdICU 4.8</td> td>>< CLDR 2.0/td td><> Unicode 6.0</td></tr tr><><>td Android 4.3 (Jelly Bean MR2)<<>/td tdICU 50<</td>><> tdCLDR 22.1<<>>/td tdUnicode 6.2/td/tr tr>><td Android 4.4 (KitKat)/td tdICU 51</<>>tdCLDR 23<<>>/td tdUnicode 6.2<><<></td></tr<>tr>><td Android 5.0 (Lollipop)<>><><<>/td tdICU 53</Td><> tdCLDR 25/><>td tdUnicode 6.3<><><<>>/td/tr td Android 6.0 (Marshmallow)/td tdICU 55.1<>><</td tdCLDR 27.0.1</td<>> tdUnicode 7.0</><td/tr>>><<td Android 7.0 (Nougat)<>><><<>/td TdICU 56.1</Td><> tdCLDR 28</td td><>Unicode 8.0/td/tr tr<>>><td Android 8.0><< (Oreo)</><>td tdICU 58.2</td td<>cldDR> 30.0.3</td td><> Unicode 9.0/td></tr tr><><>td Android 9.0 (Pie)<<>/td td> ICU 60.2<</td><> tdCLDR 32.0.1<><>/td tdUnicode 10.0</td></tr><tr>><td Android 10.0 (Q)<<>/td td> ICU 63.2><></td tdCLDR 34</td<>td> Unicode 11.0><</td/tr></table>
"default_locale"><h4>Be wary of the default locale</h3>
Si noti che esistono molti metodi pratici che usano automaticamente le impostazioni locali predefinite, ma che possono causare bug sottili.
Le impostazioni locali predefinite sono appropriate per le attività che comportano la presentazione dei dati all'utente. In questo caso, si desidera usare i formati data/ora dell'utente, i formati di numero, le regole per la conversione in minuscole e così via. In questo caso, è sicuro usare i metodi pratici.
Le impostazioni locali predefinite non sono appropriate per l'output leggibile dal computer. La scelta migliore è in genere Locale.US
– questa impostazione locale è garantita per essere disponibile su tutti i dispositivi e il fatto che non ha casi speciali sorprendenti e viene spesso usato (soprattutto per la comunicazione computer-computer) significa che tende anche a essere la scelta più efficiente.
Un errore comune consiste nell'usare in modo implicito le impostazioni locali predefinite quando si produce l'output destinato a essere leggibile dal computer. Ciò tende a lavorare sui dispositivi di test dello sviluppatore (soprattutto perché molti sviluppatori usano en_US), ma non riesce quando viene eseguito in un dispositivo il cui utente si trova in impostazioni locali più complesse.
Ad esempio, se si formattano numeri interi, alcune impostazioni locali useranno cifre decimali non ASCII. Come un altro esempio, se si formattano numeri a virgola mobile alcune impostazioni locali useranno ','
come punto decimale e '.'
per il raggruppamento di cifre. È corretto per l'output leggibile, ma probabilmente causa problemi se presentato a un altro computer (Double#parseDouble
non è possibile analizzare tale numero, ad esempio). Dovresti anche essere wary degli String#toLowerCase
overload e String#toUpperCase
che non accettano : Locale
in Turchia, ad esempio, i caratteri 'i'
e 'I'
non verranno convertiti in 'I'
e 'i'
. Si tratta del comportamento corretto per il testo turco (ad esempio l'input utente), ma inappropriato per, ad esempio, intestazioni HTTP.
Aggiunta nella versione 1.1.
Documentazione Java per java.util.Locale
.
Le parti di questa pagina sono modifiche in base al lavoro creato e condiviso dal Android Open Source e usato in base ai termini descritti nella .
Costruttori
Locale(String) |
Costruire impostazioni locali da un codice di linguaggio. |
Locale(String, String) |
Costruire impostazioni locali dalla lingua e dal paese. |
Locale(String, String, String) |
Costruire impostazioni locali dalla lingua, dal paese e dalla variante. |
Campi
PrivateUseExtension |
Chiave per l'estensione per l'uso privato ('x'). |
UnicodeLocaleExtension |
Chiave per l'estensione delle impostazioni locali Unicode ('u'). |
Proprietà
Canada |
Costante utile per il paese. |
CanadaFrench |
Costante utile per il paese. |
China |
Costante utile per il paese. |
Chinese |
Costante utile per la lingua. |
Class |
Restituisce la classe di runtime di questo |
Country |
Restituisce il codice paese/area geografica per queste impostazioni locali, che deve essere la stringa vuota, un codice ISO 3166 con 2 lettere maiuscole o un codice UN M. |
Default |
Ottiene il valore corrente delle impostazioni locali predefinite per questa istanza della macchina virtuale Java. -oppure- Imposta le impostazioni locali predefinite per questa istanza della macchina virtuale Java. |
DisplayCountry |
Restituisce un nome per il paese delle impostazioni locali appropriato per la visualizzazione all'utente. |
DisplayLanguage |
Restituisce un nome per la lingua delle impostazioni locali appropriata per la visualizzazione all'utente. |
DisplayName |
Restituisce un nome per le impostazioni locali appropriate per la visualizzazione all'utente. |
DisplayScript |
Restituisce un nome per lo script delle impostazioni locali appropriato per la visualizzazione all'utente. |
DisplayVariant |
Restituisce un nome per il codice variant delle impostazioni locali appropriato per la visualizzazione all'utente. |
English |
Costante utile per la lingua. |
ExtensionKeys |
Restituisce il set di chiavi di estensione associate a queste impostazioni locali o il set vuoto se non contiene estensioni. |
France |
Costante utile per il paese. |
French |
Costante utile per la lingua. |
German |
Costante utile per la lingua. |
Germany |
Costante utile per il paese. |
Handle |
Handle per l'istanza di Android sottostante. (Ereditato da Object) |
HasExtensions |
Restituisce |
ISO3Country |
Restituisce un'abbreviazione di tre lettere per il paese delle impostazioni locali. |
ISO3Language |
Restituisce un'abbreviazione di tre lettere della lingua delle impostazioni locali. |
Italian |
Costante utile per la lingua. |
Italy |
Costante utile per il paese. |
Japan |
Costante utile per il paese. |
Japanese |
Costante utile per la lingua. |
JniIdentityHashCode |
Un |
JniPeerMembers |
Un |
Korea |
Costante utile per il paese. |
Korean |
Costante utile per la lingua. |
Language |
Restituisce il codice della lingua delle impostazioni locali. |
PeerReference |
Un |
Prc |
Costante utile per il paese. |
Root |
Costante utile per le impostazioni locali radice. |
Script |
Restituisce lo script per queste impostazioni locali, che deve essere la stringa vuota o un codice script ISO 15924 a 4 lettere. |
SimplifiedChinese |
Costante utile per la lingua. |
Taiwan |
Costante utile per il paese. |
ThresholdClass |
Questa API supporta l'infrastruttura Mono per Android e non deve essere usata direttamente dal codice. (Ereditato da Object) |
ThresholdType |
Questa API supporta l'infrastruttura Mono per Android e non deve essere usata direttamente dal codice. (Ereditato da Object) |
TraditionalChinese |
Costante utile per la lingua. |
Uk |
Costante utile per il paese. |
UnicodeLocaleAttributes |
Restituisce il set di attributi delle impostazioni locali Unicode associati a queste impostazioni locali o il set vuoto se non ha attributi. |
UnicodeLocaleKeys |
Restituisce il set di chiavi delle impostazioni locali Unicode definite da queste impostazioni locali o il set vuoto se queste impostazioni locali non sono presenti. |
Us |
Costante utile per il paese. |
Variant |
Restituisce il codice variant per queste impostazioni locali. |
Metodi
Clone() |
Esegue l'override di Cloneable. |
Dispose() |
Un |
Dispose(Boolean) |
Un |
Equals(Object) |
Indica se un altro oggetto è "uguale a" questo. (Ereditato da Object) |
Filter(IList<Locale.LanguageRange>, ICollection<Locale>) |
Restituisce un elenco di istanze corrispondenti |
Filter(IList<Locale.LanguageRange>, ICollection<Locale>, Locale+FilteringMode) |
Restituisce un elenco di istanze corrispondenti |
FilterTags(IList<Locale.LanguageRange>, ICollection<String>) |
Restituisce un elenco di tag delle lingue corrispondenti usando il meccanismo di filtro di base definito in RFC 4647. |
FilterTags(IList<Locale.LanguageRange>, ICollection<String>, Locale+FilteringMode) |
Restituisce un elenco di tag delle lingue corrispondenti usando il meccanismo di filtro di base definito in RFC 4647. |
ForLanguageTag(String) |
Restituisce le impostazioni locali per la stringa di tag di lingua IETF BCP 47 specificata. |
GetAvailableLocales() |
Restituisce una matrice di tutte le impostazioni locali installate. |
GetDefault(Locale+Category) |
Ottiene il valore corrente delle impostazioni locali predefinite per questa istanza della macchina virtuale Java. |
GetDisplayCountry(Locale) |
Restituisce il nome del paese delle impostazioni locali, localizzato in |
GetDisplayLanguage(Locale) |
Restituisce il nome della lingua delle impostazioni locali, localizzata in |
GetDisplayName(Locale) |
Restituisce il nome della lingua, il nome del paese e la variante delle impostazioni locali, localizzati in |
GetDisplayScript(Locale) |
Restituisce un nome per lo script delle impostazioni locali appropriato per la visualizzazione all'utente. |
GetDisplayVariant(Locale) |
Restituisce un nome per il codice variant delle impostazioni locali appropriato per la visualizzazione all'utente. |
GetExtension(Char) |
Restituisce il valore di estensione (o uso privato) associato alla chiave specificata oppure Null se alla chiave non è associata alcuna estensione. |
GetHashCode() |
Restituisce un valore del codice hash per l'oggetto. (Ereditato da Object) |
GetISOCountries() |
Restituisce un elenco di tutti i codici paese di 2 lettere definiti in ISO 3166. |
GetISOCountries(Locale+IsoCountryCode) |
Un |
GetISOLanguages() |
Restituisce un elenco di tutti i codici di lingua di 2 lettere e alcuni codici di 3 lettere definiti in ISO 639. |
GetUnicodeLocaleType(String) |
Restituisce il tipo di impostazioni locali Unicode associato alla chiave delle impostazioni locali Unicode specificata per queste impostazioni locali. |
JavaFinalize() |
Chiamato dal Garbage Collector su un oggetto quando Garbage Collection determina che non sono presenti altri riferimenti all'oggetto . (Ereditato da Object) |
Lookup(IList<Locale.LanguageRange>, ICollection<Locale>) |
Restituisce un'istanza |
LookupTag(IList<Locale.LanguageRange>, ICollection<String>) |
Restituisce il tag di lingua corrispondente migliore usando il meccanismo di ricerca definito in RFC 4647. |
Notify() |
Riattiva un singolo thread in attesa del monitor dell'oggetto. (Ereditato da Object) |
NotifyAll() |
Riattiva tutti i thread in attesa del monitoraggio di questo oggetto. (Ereditato da Object) |
SetDefault(Locale+Category, Locale) |
Imposta le impostazioni locali predefinite per la categoria specificata per questa istanza della macchina virtuale Java. |
SetHandle(IntPtr, JniHandleOwnership) |
Imposta la proprietà Handle. (Ereditato da Object) |
StripExtensions() |
Restituisce una copia di questo |
ToArray<T>() |
Un |
ToLanguageTag() |
Restituisce un tag di lingua IETF BCP 47 ben formato che rappresenta queste impostazioni locali. |
ToString() |
Restituisce una rappresentazione di stringa di questo
|
UnregisterFromRuntime() |
Un |
Wait() |
Fa sì che il thread corrente attenda finché non viene risvegliato, in genere eseguendo <una>notifica</em> o <em>interrotto</em>. (Ereditato da Object) |
Wait(Int64) |
Fa sì che il thread corrente attenda finché non viene risvegliato, in genere eseguendo <una notifica</>em> o <em>interrotto</em> o fino a quando non è trascorsa una certa quantità di tempo reale. (Ereditato da Object) |
Wait(Int64, Int32) |
Fa sì che il thread corrente attenda finché non viene risvegliato, in genere eseguendo <una notifica</>em> o <em>interrotto</em> o fino a quando non è trascorsa una certa quantità di tempo reale. (Ereditato da Object) |
Implementazioni dell'interfaccia esplicita
IJavaPeerable.Disposed() |
Un |
IJavaPeerable.DisposeUnlessReferenced() |
Un |
IJavaPeerable.Finalized() |
Un |
IJavaPeerable.JniManagedPeerState |
Un |
IJavaPeerable.SetJniIdentityHashCode(Int32) |
Un |
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Un |
IJavaPeerable.SetPeerReference(JniObjectReference) |
Un |
Metodi di estensione
JavaCast<TResult>(IJavaObject) |
Esegue una conversione del tipo verificato dal runtime Android. |
JavaCast<TResult>(IJavaObject) |
Un |
GetJniTypeName(IJavaPeerable) |
Un |