ResourceBundle.GetBundle Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
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>
getBundle
utilise 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 Locale
s, 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>
getBundle
effectue 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.getResource
de . (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.
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.