ResourceBundle.Control.GetCandidateLocales(String, Locale) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
と locale
のList
Locale
候補ロケールbaseName
として の を返します。
[Android.Runtime.Register("getCandidateLocales", "(Ljava/lang/String;Ljava/util/Locale;)Ljava/util/List;", "GetGetCandidateLocales_Ljava_lang_String_Ljava_util_Locale_Handler")]
public virtual System.Collections.Generic.IList<Java.Util.Locale>? GetCandidateLocales (string baseName, Java.Util.Locale locale);
[<Android.Runtime.Register("getCandidateLocales", "(Ljava/lang/String;Ljava/util/Locale;)Ljava/util/List;", "GetGetCandidateLocales_Ljava_lang_String_Ljava_util_Locale_Handler")>]
abstract member GetCandidateLocales : string * Java.Util.Locale -> System.Collections.Generic.IList<Java.Util.Locale>
override this.GetCandidateLocales : string * Java.Util.Locale -> System.Collections.Generic.IList<Java.Util.Locale>
パラメーター
- baseName
- String
リソース バンドルの基本名、完全修飾クラス名
- locale
- Locale
リソース バンドルが必要なロケール
戻り値
指定されたに対する候補Locale
の a List
locale
- 属性
注釈
と locale
のList
Locale
候補ロケールbaseName
として の を返します。 このメソッドは、ファクトリ メソッドがターゲット Locale
のResourceBundle.getBundle
リソース バンドルの検索を試みるたびに、ファクトリ メソッドによって呼び出されます。
候補ロケールのシーケンスは、候補ロケールの対応するリソース バンドルが存在し、その親が読み込まれたリソース バンドル自体によって定義されていない場合、ランタイム リソース参照パス ( 親チェーンとも呼ばれます) にも対応します。 親チェーンのターミナルとして基本バンドルが必要な場合、リストの最後の要素は Locale#ROOT ルート ロケールである必要があります。
指定されたロケールが (ルート ロケール) List
とLocale.ROOT
等しい場合は、ルートLocale
のみを含む が返される必要があります。 この場合、ファクトリ メソッドは ResourceBundle.getBundle
ベース バンドルのみを結果のリソース バンドルとして読み込みます。
変更できない (変更できない) List
を返す必要はありません。 ただし、返された List
は、 によって getCandidateLocales
返された後で変更しないでください。
既定の実装では、以下で List
説明する規則を使用して を Locale
含む が返されます。 以下の説明では、<em>L</em>、<em>S</em>、em>C</em>、<<em>V</em> はそれぞれ、空でない言語、スクリプト、国、およびバリアントを表します。 たとえば、[em L/em>, <em>C</em>] は、言語と国に対してのみ空でない値を持つ を表Locale
します。<>< em>L</em>("xx") という形式<は、(空でない) 言語値が "xx" であることを表します。 すべてのケースで、 Locale
最終的なコンポーネント値が空の文字列である s は省略されます。
<ol><li>空のスクリプト値を持つ入力 Locale
の場合は、次のように最後のコンポーネントを 1 つずつ省略して候補 Locale
s を追加します。
<ul><li> [<em>L</em>, <em>C</em>, <em>V</em>] </li><li> [<em>L</em>, <em>C</em>] </li><li> [<em>L</em>] </li><li>Locale.ROOT
</li></ul></li>
<li>空でないスクリプト値を持つ入力 Locale
の場合は、最終的なコンポーネントを language まで省略して候補 Locale
s を追加し、 から Locale
生成された候補を国とバリアントを復元して追加します。
<ul><li> [<em>L</em>, <em>S</em>, <em>C</em>, <em>V</em>]</li li><> [<em>L</em>, <em>S</em>, <em>C</em>]</li li>>< [<em>L</em>, <em>S</em>]</li li>>< [<em>L</em>, em>C</em, <><Em>V</em>]</li li>>< [<em>L</em>, <em>C</em>]</li li><> [<em>L</em>]</li><li><Locale.ROOT
/li></ul></li>
<li>アンダースコアで区切られた複数のサブタグで構成されるバリアント値を持つ入力 Locale
の場合は、バリアントサブタグを 1 つずつ省略して候補 Locale
s を生成し、元の Locale
リストの完全なバリアント値を持つ s が出現するたびに挿入します。 たとえば、バリアントが 2 つのサブタグ <em V1</em> と <em>>V2</em> で構成されている場合は、次のようになります。
<ul><li> [<em>L</em>, <em>S</em>, <em>C</em>, <em>V1</em>, <em>V2</em>]</li li><> [<em>L</em>, <em>S</em>, <em>C</em>, <em>V1</em>]</li li><> [<em>L</em>, <em>S</em>, <em>C</em>]</李><li> [<em>L</em>, <em>S</em>]</li li>>< [<em>L</em>, <em>C</em>, <em>V1</em>, <em>V2</em>]</li li><> [<em>L</em>, <em>C</em>, <em>V1</em>]</li li><> [<em>L</em>, <em C></em>]</li li>>< [<em>L</em>]</li></liLocale.ROOT
<>/ul><></li>
<li>中国語の特別なケース。 入力 Locale
に言語 "zh" (中国語) と空のスクリプト値がある場合は、国によっては、"Hans" (簡体字) または "Hant" (繁体字) が指定される場合があります。 国が "CN" (中国) または "SG" (シンガポール) の場合は、"Hans" が提供されます。 国が "HK" (香港特別行政区中国)、"MO" (マカオ特別行政区中国)、または "TW" (台湾) である場合は、"Hant" が供給されます。 他のすべての国または国が空の場合は、スクリプトは提供されません。 たとえば、Locale("zh", "CN")
候補リストは ul<<> li> [<em>L</em>("zh")、<em>S</em>("Hans")、<em>C</em>("CN")]</li li><> [<em>L</em>("zh")<、em>S</em>("Hans")]</li li<>> [<em L</em>>("zh")、<em>C</em>("CN")]</li><> [<em>L</em>("zh)"zh")]</li li>Locale.ROOT
<<>/li></ul>
の場合Locale("zh", "TW")
、候補リストは ul><< li> [<em>L</em>("zh")、<em>S</em>("Hant")、<em>C</em>("TW")]</li li>>< [<em L</em>>("zh")、<em>S</em>("Hant")]</li li>>< [<em L</em>>("zh")、<em>C</em>("TW")]</li li>>< [<em>L</em>("zh")]</ になります。li><li>Locale.ROOT
</li></ul></li>
<li>ノルウェー語の特別なケース。 と のLocale("nn", "NO")
両方Locale("no", "NO", "NY")
がノルウェー語 (ニーノスク) を表します。 ロケールの言語が "nn" の場合、標準候補リストは [<em>L</em>("nn")] まで生成され、次の候補が追加されます。
<ul><li> [<em>L</em>("no"), <em>C</em>("NO"), <em>V</em>("NY")]</li><li> [<em>L</em>("no"), <em>C</em>("NO")]</li li>>< [<em>L</em>("no")]</li><li>Locale.ROOT
</li></ul>
ロケールが正確な Locale("no", "NO", "NY")
場合は、最初に に Locale("nn", "NO")
変換され、次に上記の手順に従います。
また、Java では、"no" という言語がノルウェー語の Bokmål "nb" のシノニムとして扱います。 単一のケース Locale("no", "NO", "NY")
(上記で処理) を除き、入力 Locale
に言語 "no" または "nb" がある場合、言語コード "no" と "nb" を持つ候補 Locale
s はインターリーブされ、最初に要求された言語を使用し、次にそのシノニムを使用します。 たとえば、 Locale("nb", "NO", "POSIX")
は次の候補リストを生成します。
<ul><li> [<em>L</em>("nb"), <em>C/em>("NO"), <em>V<</em>("POSIX")]</li li><> [<em>L</em>("no"), <em>C</em>("NO"), <em>V</em>("POSIX")]</li li><> [<em>L</em>("nb"), <em>C</em>("NO")]</li><li> [<em>L</em>("no"), <em>C</em>("NO")]</li li>>< [<em>L</em>("nb")]</li li><> [<em>L</em>("no")]</li><li><Locale.ROOT
/li></ul>
Locale("no", "NO", "POSIX")
は、"no" のロケールが "nb" の対応するロケールの前に表示されることを除き、同じリストを生成します。</li></ol>
既定の実装では、 を ArrayList
使用します。オーバーライドする実装は、呼び出し元に返す前に変更できます。 ただし、 によって getCandidateLocales
サブクラスが返された後でサブクラスを変更することはできません。
たとえば、指定baseName
された が "Messages" で、指定locale
された が である場合、 Locale("ja", "", "XX")
の Locale
はList
です。
Locale("ja", "", "XX")
Locale("ja")
Locale.ROOT
返されます。 また、"ja" と "" Locale
のリソース バンドルが見つかった場合、ランタイム リソース参照パス (親チェーン) は次のようになります。
{@code
Messages_ja -> Messages
}
このページの一部は、によって作成および共有された作業に基づく変更であり、に記載されている条件に従って使用されます。