Condividi tramite


ResourceBundle.GetBundle Metodo

Definizione

Overload

GetBundle(String)

Ottiene un bundle di risorse usando il nome di base specificato, le impostazioni locali predefinite e il caricatore della classe del chiamante.

GetBundle(String, Locale)

Ottiene un bundle di risorse usando il nome di base e le impostazioni locali specificati e il caricatore di classi del chiamante.

GetBundle(String, ResourceBundle+Control)

Ottiene un bundle di risorse usando il nome di base specificato, le impostazioni locali predefinite e il caricatore della classe del chiamante.

GetBundle(String, Locale, ClassLoader)

Ottiene un bundle di risorse usando il nome di base, le impostazioni locali e il caricatore di classi specificati.

GetBundle(String, Locale, ResourceBundle+Control)

Ottiene un bundle di risorse usando il nome di base specificato, le impostazioni locali predefinite e il caricatore della classe del chiamante.

GetBundle(String, Locale, ClassLoader, ResourceBundle+Control)

Ottiene un bundle di risorse usando il nome di base specificato, le impostazioni locali predefinite e il caricatore della classe del chiamante.

GetBundle(String)

Ottiene un bundle di risorse usando il nome di base specificato, le impostazioni locali predefinite e il caricatore della classe del chiamante.

[Android.Runtime.Register("getBundle", "(Ljava/lang/String;)Ljava/util/ResourceBundle;", "")]
public static Java.Util.ResourceBundle? GetBundle (string? baseName);
[<Android.Runtime.Register("getBundle", "(Ljava/lang/String;)Ljava/util/ResourceBundle;", "")>]
static member GetBundle : string -> Java.Util.ResourceBundle

Parametri

baseName
String

il nome di base del bundle di risorse, un nome di classe completo

Restituisce

un bundle di risorse per il nome di base specificato e le impostazioni locali predefinite

Attributi

Eccezioni

se non è possibile trovare .ResourceBundle

Commenti

Ottiene un bundle di risorse usando il nome di base specificato, le impostazioni locali predefinite e il caricatore della classe del chiamante. La chiamata a questo metodo equivale a chiamare <blockquote>getBundle(baseName, Locale.getDefault(), this.getClass().getClassLoader()), </blockquote>

Documentazione java per java.util.ResourceBundle.getBundle(java.lang.String).

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dal progetto Open Source Android e usato in base ai termini descritti nella licenza Creative Commons 2.5 Attribuzione.

Si applica a

GetBundle(String, Locale)

Ottiene un bundle di risorse usando il nome di base e le impostazioni locali specificati e il caricatore di classi del chiamante.

[Android.Runtime.Register("getBundle", "(Ljava/lang/String;Ljava/util/Locale;)Ljava/util/ResourceBundle;", "")]
public static Java.Util.ResourceBundle? GetBundle (string? baseName, Java.Util.Locale? locale);
[<Android.Runtime.Register("getBundle", "(Ljava/lang/String;Ljava/util/Locale;)Ljava/util/ResourceBundle;", "")>]
static member GetBundle : string * Java.Util.Locale -> Java.Util.ResourceBundle

Parametri

baseName
String

il nome di base del bundle di risorse, un nome di classe completo

locale
Locale

impostazioni locali per le quali si desidera un bundle di risorse

Restituisce

un bundle di risorse per il nome e le impostazioni locali di base specificati

Attributi

Eccezioni

se non è possibile trovare il bundle di risorse.

Commenti

Ottiene un bundle di risorse usando il nome di base e le impostazioni locali specificati e il caricatore di classi del chiamante. La chiamata a questo metodo equivale a chiamare <blockquote>getBundle(baseName, locale, this.getClass().getClassLoader()), </blockquote>

Documentazione java per java.util.ResourceBundle.getBundle(java.lang.String, java.util.Locale).

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dal progetto Open Source Android e usato in base ai termini descritti nella licenza Creative Commons 2.5 Attribuzione.

Si applica a

GetBundle(String, ResourceBundle+Control)

Ottiene un bundle di risorse usando il nome di base specificato, le impostazioni locali predefinite e il caricatore della classe del chiamante.

[Android.Runtime.Register("getBundle", "(Ljava/lang/String;Ljava/util/ResourceBundle$Control;)Ljava/util/ResourceBundle;", "")]
public static Java.Util.ResourceBundle? GetBundle (string? baseName, Java.Util.ResourceBundle.Control? control);
[<Android.Runtime.Register("getBundle", "(Ljava/lang/String;Ljava/util/ResourceBundle$Control;)Ljava/util/ResourceBundle;", "")>]
static member GetBundle : string * Java.Util.ResourceBundle.Control -> Java.Util.ResourceBundle

Parametri

baseName
String

il nome di base del bundle di risorse, un nome di classe completo

control
ResourceBundle.Control

controllo che controlla la sequenza di accesso

Restituisce

un bundle di risorse per il nome di base specificato e le impostazioni locali predefinite

Attributi

Commenti

Documentazione java per java.util.ResourceBundle.getBundle(java.lang.String).

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dal progetto Open Source Android e usato in base ai termini descritti nella licenza Creative Commons 2.5 Attribuzione.

Si applica a

GetBundle(String, Locale, ClassLoader)

Ottiene un bundle di risorse usando il nome di base, le impostazioni locali e il caricatore di classi specificati.

[Android.Runtime.Register("getBundle", "(Ljava/lang/String;Ljava/util/Locale;Ljava/lang/ClassLoader;)Ljava/util/ResourceBundle;", "")]
public static Java.Util.ResourceBundle? GetBundle (string? baseName, Java.Util.Locale? locale, Java.Lang.ClassLoader? loader);
[<Android.Runtime.Register("getBundle", "(Ljava/lang/String;Ljava/util/Locale;Ljava/lang/ClassLoader;)Ljava/util/ResourceBundle;", "")>]
static member GetBundle : string * Java.Util.Locale * Java.Lang.ClassLoader -> Java.Util.ResourceBundle

Parametri

baseName
String

il nome di base del bundle di risorse, un nome di classe completo

locale
Locale

impostazioni locali per le quali si desidera un bundle di risorse

loader
ClassLoader

caricatore di classi da cui caricare il bundle di risorse

Restituisce

un bundle di risorse per il nome e le impostazioni locali di base specificati

Attributi

Eccezioni

se non è possibile trovare .ResourceBundle

Commenti

Ottiene un bundle di risorse usando il nome di base, le impostazioni locali e il caricatore di classi specificati.

Equivale a chiamare: <blockquote>

getBundle(baseName, targetLocale, loader, control)

</blockquote> passando un'istanza predefinita di Control. Fare riferimento alla descrizione della modifica del comportamento predefinito. Di seguito viene descritto il comportamento predefinito.

<b>"default_behavior">Ricerca bundle risorse e strategia< di caricamento/b>

getBundleusa il nome di base, le impostazioni locali specificate e le impostazioni locali predefinite (ottenute da java.util.Locale#getDefault() Locale.getDefault) per generare una sequenza di nomi< di bundle candidati candidati></em>>. Se la lingua, lo script, il paese e la variante specificati sono tutte stringhe vuote, il nome di base è l'unico nome del bundle candidato. In caso contrario, viene generato un elenco di impostazioni locali candidate dai valori di attributo delle impostazioni locali specificate (lingua, script, paese e variante) e accodati al nome di base. In genere, l'aspetto sarà simile al seguente:

baseName + "_" + language + "_" + script + "_" + country + "_" + variant
                baseName + "_" + language + "_" + script + "_" + country
                baseName + "_" + language + "_" + script
                baseName + "_" + language + "_" + country + "_" + variant
                baseName + "_" + language + "_" + country
                baseName + "_" + language

I nomi dei bundle candidati in cui il componente finale è una stringa vuota vengono omessi, insieme al carattere di sottolineatura. Ad esempio, se il paese è una stringa vuota, il secondo e il quinto nome del bundle candidato precedente verrebbero omessi. Inoltre, se lo script è una stringa vuota, i nomi candidati inclusi lo script vengono omessi. Ad esempio, le impostazioni locali con linguaggio "de" e variant "JAVA" produrranno nomi candidati con il nome di base "MyResource" di seguito.

MyResource_de__JAVA
                MyResource_de

Nel caso in cui la variante contenga uno o più caratteri ('_') di sottolineatura , una sequenza di nomi di bundle generati troncando l'ultimo carattere di sottolineatura e la parte che segue viene inserita dopo un nome di bundle candidato con la variante originale. Ad esempio, per le impostazioni locali con la lingua "en", lo script "Latn, country "US" e variant "WINDOWS_VISTA" e il nome di base bundle "MyResource", viene generato l'elenco dei nomi di bundle candidati seguenti:

MyResource_en_Latn_US_WINDOWS_VISTA
            MyResource_en_Latn_US_WINDOWS
            MyResource_en_Latn_US
            MyResource_en_Latn
            MyResource_en_US_WINDOWS_VISTA
            MyResource_en_US_WINDOWS
            MyResource_en_US
            MyResource_en

<blockquote><b>Note:</b> Per alcuni Locale, l'elenco di nomi di bundle candidati contiene nomi aggiuntivi o l'ordine dei nomi di aggregazione viene leggermente modificato. Per informazioni dettagliate, vedere la descrizione dell'implementazione predefinita di Control#getCandidateLocales(String, Locale) getCandidateLocales .</blockquote>

getBundle esegue quindi l'iterazione sui nomi dei bundle candidati per trovare il primo per il quale può <creare>un'istanza</em> un bundle di risorse effettivo. Usa il metodo dei Control#getFormats getFormats controlli predefiniti, che genera due nomi di bundle per ogni nome generato, il primo nome di classe e il secondo nome di file di proprietà. Per ogni nome di bundle candidato, tenta di creare un bundle di risorse:

<ul><li>First, tenta di caricare una classe usando il nome della classe generata. Se una classe di questo tipo può essere trovata e caricata usando il caricatore di classi specificato, è compatibile con ResourceBundle, è accessibile da ResourceBundle e può essere creata un'istanza di getBundle questa classe e la usa come <bundle< di risorse risultante em>/em>.

<li>In caso contrario, getBundle tenta di individuare un file di risorse di proprietà usando il nome del file di proprietà generato. Genera un nome di percorso dal nome del bundle candidato sostituendo tutti i caratteri "." con "/" e aggiungendo la stringa ".properties". Tenta di trovare una "risorsa" con questo nome usando java.lang.ClassLoader#getResource(java.lang.String) ClassLoader.getResource. Si noti che una "risorsa" nel senso di getResource non ha nulla a che fare con il contenuto di un bundle di risorse, è solo un contenitore di dati, ad esempio un file. Se trova una "risorsa", tenta di creare una nuova PropertyResourceBundle istanza dal relativo contenuto. In caso di esito positivo, questa istanza diventa il <bundle< di risorse risultante em>/em>. </ul>

Questo continua fino a quando non viene creata un'istanza di un bundle di risorse risultato o l'elenco di nomi di bundle candidati non viene esaurito. Se non viene trovato alcun bundle di risorse corrispondente, viene chiamato il metodo del Control#getFallbackLocale getFallbackLocale controllo predefinito, che restituisce le impostazioni locali predefinite correnti. Viene generata una nuova sequenza di nomi di impostazioni locali candidate usando queste impostazioni locali e ne viene eseguita di nuovo la ricerca, come indicato in precedenza.

Se non viene ancora trovato alcun bundle di risultati, viene cercato solo il nome di base. Se l'errore persiste, viene generata un'eccezione MissingResourceException .

"parent_chain"> Dopo aver trovato un bundle di risorse risultante, viene creata un'istanza della <>catena< padre/em>. Se il bundle dei risultati ha già un elemento padre (forse perché è stato restituito da una cache) la catena è stata completata.

In caso contrario, getBundle esamina il resto dell'elenco delle impostazioni locali candidate usato durante il passaggio che ha generato il bundle di risorse risultato. Come in precedenza, i nomi dei bundle candidati in cui il componente finale è una stringa vuota vengono omessi. Quando si tratta della fine dell'elenco dei candidati, prova il nome del bundle normale. Con ogni nome di bundle candidato tenta di creare un'istanza di un bundle di risorse (cercando prima una classe e quindi un file di proprietà, come descritto in precedenza).

Ogni volta che ha esito positivo, chiama il metodo del bundle di #setParent(java.util.ResourceBundle) setParent risorse di cui è stata creata un'istanza precedente con il nuovo bundle di risorse. Questo continua fino a quando l'elenco di nomi non viene esaurito o il bundle corrente ha già un elemento padre non Null.

Una volta completata la catena padre, viene restituito il bundle.

<b>Nota:</b>getBundle memorizza nella cache i bundle di risorse di cui è stata creata un'istanza e può restituire più volte la stessa istanza del bundle di risorse.

<b Nota:</b>>L'argomento baseName deve essere un nome di classe completo. Tuttavia, per la compatibilità con le versioni precedenti, gli ambienti di runtime Java SE non verificano questo problema e pertanto è possibile accedere PropertyResourceBundlea s specificando un nome di percorso (usando "/") anziché un nome di classe completo (usando ".").

"default_behavior_example"><esempio sicuro>:</strong>

Vengono forniti i file di classe e proprietà seguenti: <ul><li>MyResources.class <li>MyResources.properties li>MyResources_fr.properties <<li>MyResources_fr_CH.class <li>MyResources_fr_CH.properties <li>MyResources_en.properties <li>MyResources_es_ES.class </ul>

Il contenuto di tutti i file è valido (ovvero, sottoclassi pubbliche non astratte di ResourceBundle per i file ".class", file sintatticamente corretti con ".properties"). L'impostazione locale predefinita è Locale("en", "GB").

La chiamata getBundle con gli argomenti delle impostazioni locali seguenti creerà un'istanza dei bundle di risorse come indicato di seguito:

<table class="striped"><caption style="display:none">getBundle() locale to resource bundle mapping</caption><thead><tr><th scope="col">Locale</th th><scope="col">Resource bundle</th></tr></thead><tbody<>tr><th scope="row">Locale("fr", "CH")</th><td>MyResources_fr_CH.class, parent MyResources_fr.properties, parent MyResources.class</td></trtr th scope="row">Locale("fr", "FR")</th><td>MyResources_fr.properties, parent MyResources.class</td></tr tr><<>th scope="row">Locale("de", "DE")</th><td>MyResources_en.properties, parent MyResources.class/td/tr tr<>><th scope="row">Locale("en", "US")</th><td>MyResources_en.properties, parent MyResources.class<</td><></tr><><><tr><th scope="row">Locale("es", "ES")</th><td>MyResources_es_ES.class, parent MyResources.class</td></tr></tbody></table>

Il file MyResources_fr_CH.properties non viene mai usato perché è nascosto dalla MyResources_fr_CH.class. Analogamente, MyResources.properties è nascosto anche da MyResources.class.

Aggiunta nella versione 1.2.

Documentazione java per java.util.ResourceBundle.getBundle(java.lang.String, java.util.Locale, java.lang.ClassLoader).

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dal progetto Open Source Android e usato in base ai termini descritti nella licenza Creative Commons 2.5 Attribuzione.

Si applica a

GetBundle(String, Locale, ResourceBundle+Control)

Ottiene un bundle di risorse usando il nome di base specificato, le impostazioni locali predefinite e il caricatore della classe del chiamante.

[Android.Runtime.Register("getBundle", "(Ljava/lang/String;Ljava/util/Locale;Ljava/util/ResourceBundle$Control;)Ljava/util/ResourceBundle;", "")]
public static Java.Util.ResourceBundle? GetBundle (string? baseName, Java.Util.Locale? targetLocale, Java.Util.ResourceBundle.Control? control);
[<Android.Runtime.Register("getBundle", "(Ljava/lang/String;Ljava/util/Locale;Ljava/util/ResourceBundle$Control;)Ljava/util/ResourceBundle;", "")>]
static member GetBundle : string * Java.Util.Locale * Java.Util.ResourceBundle.Control -> Java.Util.ResourceBundle

Parametri

baseName
String

il nome di base del bundle di risorse, un nome di classe completo

targetLocale
Locale

impostazioni locali di destinazione del bundle di risorse

control
ResourceBundle.Control

controllo che controlla la sequenza di accesso

Restituisce

un bundle di risorse per il nome di base specificato e le impostazioni locali predefinite

Attributi

Commenti

Documentazione java per java.util.ResourceBundle.getBundle(java.lang.String).

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dal progetto Open Source Android e usato in base ai termini descritti nella licenza Creative Commons 2.5 Attribuzione.

Si applica a

GetBundle(String, Locale, ClassLoader, ResourceBundle+Control)

Ottiene un bundle di risorse usando il nome di base specificato, le impostazioni locali predefinite e il caricatore della classe del chiamante.

[Android.Runtime.Register("getBundle", "(Ljava/lang/String;Ljava/util/Locale;Ljava/lang/ClassLoader;Ljava/util/ResourceBundle$Control;)Ljava/util/ResourceBundle;", "")]
public static Java.Util.ResourceBundle? GetBundle (string? baseName, Java.Util.Locale? targetLocale, Java.Lang.ClassLoader? loader, Java.Util.ResourceBundle.Control? control);
[<Android.Runtime.Register("getBundle", "(Ljava/lang/String;Ljava/util/Locale;Ljava/lang/ClassLoader;Ljava/util/ResourceBundle$Control;)Ljava/util/ResourceBundle;", "")>]
static member GetBundle : string * Java.Util.Locale * Java.Lang.ClassLoader * Java.Util.ResourceBundle.Control -> Java.Util.ResourceBundle

Parametri

baseName
String

il nome di base del bundle di risorse, un nome di classe completo

targetLocale
Locale

impostazioni locali di destinazione del bundle di risorse

loader
ClassLoader

caricatore di classi per caricare la risorsa

control
ResourceBundle.Control

controllo che controlla la sequenza di accesso

Restituisce

un bundle di risorse per il nome di base specificato e le impostazioni locali predefinite

Attributi

Commenti

Documentazione java per java.util.ResourceBundle.getBundle(java.lang.String).

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dal progetto Open Source Android e usato in base ai termini descritti nella licenza Creative Commons 2.5 Attribuzione.

Si applica a