Partager via


ResourceBundle.GetBundle Méthode

Définition

Surcharges

GetBundle(String)

Obtient un bundle de ressources à l’aide du nom de base spécifié, des paramètres régionaux par défaut et du chargeur de classes de l’appelant.

GetBundle(String, Locale)

Obtient un bundle de ressources à l’aide du nom de base et des paramètres régionaux spécifiés, ainsi que du chargeur de classes de l’appelant.

GetBundle(String, ResourceBundle+Control)

Obtient un bundle de ressources à l’aide du nom de base spécifié, des paramètres régionaux par défaut et du chargeur de classes de l’appelant.

GetBundle(String, Locale, ClassLoader)

Obtient un bundle de ressources à l’aide du nom de base, des paramètres régionaux et du chargeur de classes spécifiés.

GetBundle(String, Locale, ResourceBundle+Control)

Obtient un bundle de ressources à l’aide du nom de base spécifié, des paramètres régionaux par défaut et du chargeur de classes de l’appelant.

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

Obtient un bundle de ressources à l’aide du nom de base spécifié, des paramètres régionaux par défaut et du chargeur de classes de l’appelant.

GetBundle(String)

Obtient un bundle de ressources à l’aide du nom de base spécifié, des paramètres régionaux par défaut et du chargeur de classes de l’appelant.

[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

Paramètres

baseName
String

le nom de base du groupe de ressources, un nom de classe complet

Retours

un bundle de ressources pour le nom de base donné et les paramètres régionaux par défaut

Attributs

Exceptions

si la valeur ResourceBundle est introuvable.

Remarques

Obtient un bundle de ressources à l’aide du nom de base spécifié, des paramètres régionaux par défaut et du chargeur de classes de l’appelant. L’appel de cette méthode équivaut à appeler <blockquote>getBundle(baseName, Locale.getDefault(), this.getClass().getClassLoader()), </blockquote>

Documentation Java pour java.util.ResourceBundle.getBundle(java.lang.String).

Les parties de cette page sont des modifications basées sur le travail créé et partagé par le projet Android Open Source et utilisés en fonction des termes décrits dans la licence d’attribution Creative Commons 2.5.

S’applique à

GetBundle(String, Locale)

Obtient un bundle de ressources à l’aide du nom de base et des paramètres régionaux spécifiés, ainsi que du chargeur de classes de l’appelant.

[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

Paramètres

baseName
String

le nom de base du groupe de ressources, un nom de classe complet

locale
Locale

paramètres régionaux pour lesquels un bundle de ressources est souhaité

Retours

un ensemble de ressources pour le nom de base et les paramètres régionaux donnés

Attributs

Exceptions

si le bundle de ressources est introuvable.

Remarques

Obtient un bundle de ressources à l’aide du nom de base et des paramètres régionaux spécifiés, ainsi que du chargeur de classes de l’appelant. L’appel de cette méthode équivaut à appeler <blockquote>getBundle(baseName, locale, this.getClass().getClassLoader()), </blockquote>

Documentation Java pour java.util.ResourceBundle.getBundle(java.lang.String, java.util.Locale).

Les parties de cette page sont des modifications basées sur le travail créé et partagé par le projet Android Open Source et utilisés en fonction des termes décrits dans la licence d’attribution Creative Commons 2.5.

S’applique à

GetBundle(String, ResourceBundle+Control)

Obtient un bundle de ressources à l’aide du nom de base spécifié, des paramètres régionaux par défaut et du chargeur de classes de l’appelant.

[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

Paramètres

baseName
String

le nom de base du groupe de ressources, un nom de classe complet

control
ResourceBundle.Control

contrôle qui contrôle la séquence d’accès

Retours

un bundle de ressources pour le nom de base donné et les paramètres régionaux par défaut

Attributs

Remarques

Documentation Java pour java.util.ResourceBundle.getBundle(java.lang.String).

Les parties de cette page sont des modifications basées sur le travail créé et partagé par le projet Android Open Source et utilisés en fonction des termes décrits dans la licence d’attribution Creative Commons 2.5.

S’applique à

GetBundle(String, Locale, ClassLoader)

Obtient un bundle de ressources à l’aide du nom de base, des paramètres régionaux et du chargeur de classes spécifiés.

[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

Paramètres

baseName
String

le nom de base du groupe de ressources, un nom de classe complet

locale
Locale

paramètres régionaux pour lesquels un bundle de ressources est souhaité

loader
ClassLoader

chargeur de classes à partir duquel charger le bundle de ressources

Retours

un ensemble de ressources pour le nom de base et les paramètres régionaux donnés

Attributs

Exceptions

si la valeur ResourceBundle est introuvable.

Remarques

Obtient un bundle de ressources à l’aide du nom de base, des paramètres régionaux et du chargeur de classes spécifiés.

Cela équivaut à appeler : <blockquote>

getBundle(baseName, targetLocale, loader, control)

</blockquote> passant une instance par défaut de Control. Reportez-vous à la description de la modification du comportement par défaut. L’exemple suivant décrit le comportement par défaut.

<b>"default_behavior">Stratégie de chargement< et de recherche de bundle de ressources/b>

getBundleutilise le nom de base, les paramètres régionaux spécifiés et les paramètres régionaux par défaut (obtenus à partir de java.util.Locale#getDefault() Locale.getDefault) pour générer une séquence de « candidats »>>< em candidate bundle names</em>. Si la langue, le script, le pays et la variante des paramètres régionaux spécifiés sont toutes des chaînes vides, le nom de base est le seul nom de bundle candidat. Sinon, une liste de paramètres régionaux candidats est générée à partir des valeurs d’attribut des paramètres régionaux spécifiés (langue, script, pays et variante) et ajoutée au nom de base. En règle générale, cela se présente comme suit :

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

Les noms de bundles candidats où le composant final est une chaîne vide sont omis, ainsi que le trait de soulignement. Par exemple, si le pays est une chaîne vide, le deuxième et le cinquième nom du groupe candidat ci-dessus sont omis. En outre, si le script est une chaîne vide, les noms des candidats, y compris le script, sont omis. Par exemple, les paramètres régionaux avec le langage « de » et la variante « JAVA » produisent des noms candidats avec le nom de base « MyResource » ci-dessous.

MyResource_de__JAVA
                MyResource_de

Dans le cas où la variante contient un ou plusieurs traits ('_') de soulignement, une séquence de noms de bundle générés en tronquant le dernier trait de soulignement et la partie suivante, elle est insérée après un nom de bundle candidat avec la variante d’origine. Par exemple, pour un paramètre régional avec la langue « en », le script « Latn, pays « US » et la variante « WINDOWS_VISTA » et le nom de base de l’offre groupée « MyResource », la liste des noms de bundles candidats ci-dessous est générée :

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>Remarque :</b> Pour certains Locales, la liste des noms de bundles candidats contient des noms supplémentaires, ou l’ordre des noms de bundles est légèrement modifié. Pour plus d’informations, consultez la description de Control#getCandidateLocales(String, Locale) getCandidateLocales l’implémentation par défaut.</blockquote>

getBundleeffectue ensuite une itération sur les noms de bundles candidats pour trouver le premier pour lequel il peut <instancier</em>> un groupe de ressources réel. Elle utilise la méthode des Control#getFormats getFormats contrôles par défaut, qui génère deux noms d’ensemble pour chaque nom généré, le premier un nom de classe et le deuxième nom de fichier de propriétés. Pour chaque nom de bundle candidat, il tente de créer un bundle de ressources :

<ul><li>First, il tente de charger une classe à l’aide du nom de classe généré. Si une telle classe est trouvée et chargée à l’aide du chargeur de classes spécifié, l’affectation est compatible avec ResourceBundle, est accessible à partir de ResourceBundle et peut être instanciée, getBundle crée une nouvelle instance de cette classe et l’utilise comme <>bundle< de ressources em result/em>.

<Dans>le cas contraire, getBundle tente de localiser un fichier de ressources de propriété à l’aide du nom de fichier de propriétés généré. Il génère un nom de chemin d’accès à partir du nom de l’offre groupée candidate en remplaçant tous les caractères « ». Il tente de trouver une « ressource » avec ce nom à l’aide java.lang.ClassLoader#getResource(java.lang.String) ClassLoader.getResourcede . (Notez qu’une « ressource » n’a getResource rien à voir avec le contenu d’un ensemble de ressources, il s’agit simplement d’un conteneur de données, tel qu’un fichier.) S’il trouve une « ressource », il tente de créer une PropertyResourceBundle instance à partir de son contenu. Si elle réussit, cette instance devient le <>groupe< de ressources em result/em>. </ul>

Cela se poursuit jusqu’à ce qu’un bundle de ressources de résultat soit instancié ou que la liste des noms de bundles candidats soit épuisée. Si aucun bundle de ressources correspondant n’est trouvé, la méthode du Control#getFallbackLocale getFallbackLocale contrôle par défaut est appelée, qui retourne les paramètres régionaux par défaut actuels. Une nouvelle séquence de noms de paramètres régionaux candidats est générée à l’aide de ces paramètres régionaux et à nouveau recherchée, comme ci-dessus.

Si aucun bundle de résultats n’est trouvé, le nom de base seul est recherché. En cas d’échec, une MissingResourceException erreur est levée.

« parent_chain »> Une fois qu’un bundle de ressources de résultat a été trouvé, sa <chaîne< parente em>/em> est instanciée. Si le bundle de résultats a déjà un parent (peut-être parce qu’il a été retourné à partir d’un cache) la chaîne est terminée.

Dans le cas contraire, getBundle examine le reste de la liste des paramètres régionaux candidats qui a été utilisée pendant la passe qui a généré le bundle de ressources de résultat. (Comme précédemment, les noms de bundle candidats où le composant final est une chaîne vide sont omis.) Lorsqu’il s’agit de la fin de la liste des candidats, il essaie le nom de l’offre groupée simple. Avec chacun des noms de bundles candidats, il tente d’instancier un bundle de ressources (tout d’abord à la recherche d’une classe, puis d’un fichier de propriétés, comme décrit ci-dessus).

Chaque fois qu’il réussit, il appelle la méthode du bundle de #setParent(java.util.ResourceBundle) setParent ressources instancié précédemment avec le nouveau bundle de ressources. Cela se poursuit jusqu’à ce que la liste des noms soit épuisée ou que l’offre groupée actuelle ait déjà un parent non null.

Une fois la chaîne parente terminée, le bundle est retourné.

<b>Remarque :</b>getBundle met en cache des bundles de ressources instanciés et peut retourner la même instance de groupe de ressources plusieurs fois.

<b>Remarque :</b>L’argument baseName doit être un nom de classe complet. Toutefois, pour la compatibilité avec les versions antérieures, les environnements Java SE Runtime ne le vérifient pas, et il est donc possible d’accéder PropertyResourceBundleà s en spécifiant un nom de chemin d’accès (à l’aide de « / ») au lieu d’un nom de classe complet (à l’aide de « »).

« default_behavior_example"><strong>Example :</strong>

Les fichiers de classes et de propriétés suivants sont fournis : <ul<>li 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>

Le contenu de tous les fichiers est valide (c’est-à-dire les sous-classes non abstraites publiques des ResourceBundle fichiers .class", les fichiers .properties corrects de manière syntactique). Les paramètres régionaux par défaut sont Locale("en", "GB").

L’appel getBundle avec les arguments régionaux ci-dessous instancie les bundles de ressources comme suit :

<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/tr/tr><><tr><th scope="row">Locale(« fr », « FR »)</th><td>MyResources_fr.properties, parent MyResources.class</td></tr<>><th scope="row">Locale(« de », « DE »)</th><td>MyResources_en.properties, parent MyResources.class/td></tr<><>th scope="row">Locale(« en », « US »)</th><td>MyResources_en.properties, parent MyResources.class<</td/tr></tr><tr><th scope="row">Locale(« es », « ES »)</th><td>MyResources_es_ES.class, parent MyResources.class</td></tr></tbody></table>

Le fichier MyResources_fr_CH.properties n’est jamais utilisé, car il est masqué par la classe MyResources_fr_CH.class. De même, MyResources.properties est également masqué par MyResources.class.

Ajouté dans la version 1.2.

Documentation Java pour java.util.ResourceBundle.getBundle(java.lang.String, java.util.Locale, java.lang.ClassLoader).

Les parties de cette page sont des modifications basées sur le travail créé et partagé par le projet Android Open Source et utilisés en fonction des termes décrits dans la licence d’attribution Creative Commons 2.5.

S’applique à

GetBundle(String, Locale, ResourceBundle+Control)

Obtient un bundle de ressources à l’aide du nom de base spécifié, des paramètres régionaux par défaut et du chargeur de classes de l’appelant.

[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

Paramètres

baseName
String

le nom de base du groupe de ressources, un nom de classe complet

targetLocale
Locale

paramètres régionaux cibles de l’offre groupée de ressources

control
ResourceBundle.Control

contrôle qui contrôle la séquence d’accès

Retours

un bundle de ressources pour le nom de base donné et les paramètres régionaux par défaut

Attributs

Remarques

Documentation Java pour java.util.ResourceBundle.getBundle(java.lang.String).

Les parties de cette page sont des modifications basées sur le travail créé et partagé par le projet Android Open Source et utilisés en fonction des termes décrits dans la licence d’attribution Creative Commons 2.5.

S’applique à

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

Obtient un bundle de ressources à l’aide du nom de base spécifié, des paramètres régionaux par défaut et du chargeur de classes de l’appelant.

[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

Paramètres

baseName
String

le nom de base du groupe de ressources, un nom de classe complet

targetLocale
Locale

paramètres régionaux cibles de l’offre groupée de ressources

loader
ClassLoader

chargeur de classes à charger la ressource

control
ResourceBundle.Control

contrôle qui contrôle la séquence d’accès

Retours

un bundle de ressources pour le nom de base donné et les paramètres régionaux par défaut

Attributs

Remarques

Documentation Java pour java.util.ResourceBundle.getBundle(java.lang.String).

Les parties de cette page sont des modifications basées sur le travail créé et partagé par le projet Android Open Source et utilisés en fonction des termes décrits dans la licence d’attribution Creative Commons 2.5.

S’applique à