ResourceManager.GetResourceSet(CultureInfo, Boolean, Boolean) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
特定のカルチャのリソース セットを取得します。
public:
virtual System::Resources::ResourceSet ^ GetResourceSet(System::Globalization::CultureInfo ^ culture, bool createIfNotExists, bool tryParents);
public virtual System.Resources.ResourceSet? GetResourceSet (System.Globalization.CultureInfo culture, bool createIfNotExists, bool tryParents);
public virtual System.Resources.ResourceSet GetResourceSet (System.Globalization.CultureInfo culture, bool createIfNotExists, bool tryParents);
abstract member GetResourceSet : System.Globalization.CultureInfo * bool * bool -> System.Resources.ResourceSet
override this.GetResourceSet : System.Globalization.CultureInfo * bool * bool -> System.Resources.ResourceSet
Public Overridable Function GetResourceSet (culture As CultureInfo, createIfNotExists As Boolean, tryParents As Boolean) As ResourceSet
パラメーター
- culture
- CultureInfo
リソースが取得されるカルチャ。
- createIfNotExists
- Boolean
リソース セットがまだ読み込まれていなければ読み込む場合は true
。それ以外の場合は false
。
- tryParents
- Boolean
リソース セットが見つからないときに、適切なリソースを読み込むためにリソース フォールバックを使用する場合は true
。リソース フォールバック プロセスをバイパスする場合は false
。
戻り値
指定されたカルチャに設定されたリソース。
例外
culture
パラメーターが null
です。
tryParents
が true
で、使用できるリソースのセットが見つからず、既定のカルチャ リソースもありません。
例
次の例では、 メソッドを GetResourceSet 呼び出して、フランス語 (フランス) カルチャのカルチャ固有のリソースを取得します。 次に、リソース セット内のすべてのリソースを列挙します。 ShowNumbers.exe という名前の実行可能ファイルのソース コードが含まれています。 また、数値の名前を含む次の 2 つのテキスト ファイルも含まれています。 1 つ目の NumberResources.txt には、英語の 1 から 10 までの数字の名前が含まれています。
one=one
two=two
three=three
four=four
five=five
six=six
seven=seven
eight=eight
nine=nine
ten=ten
2 つ目の NumberResources.fr-FR.txt には、フランス語の 1 から 4 までの数字の名前が含まれています。
one=un
two=deux
three=trois
four=quatre
バッチ ファイルを使用してリソース ファイルを生成し、英語のリソース ファイルを実行可能ファイルに埋め込み、フランス語リソースのサテライト アセンブリを作成できます。 Visual Basic コンパイラを使用して実行可能ファイルを生成するバッチ ファイルを次に示します。
resgen NumberResources.txt
vbc shownumbers.vb /resource:NumberResources.resources
md fr-FR
resgen NumberResources.fr-FR.txt
al /out:fr-FR\ShowNumbers.resources.dll /culture:fr-FR /embed:NumberResources.fr-FR.resources
C# コンパイラでは、次のバッチ ファイルを使用できます。
resgen NumberResources.txt
csc shownumbers.cs /resource:NumberResources.resources
md fr-FR
resgen NumberResources.fr-FR.txt
al /out:fr-FR\ShowNumbers.resources.dll /culture:fr-FR /embed:NumberResources.fr-FR.resources
using System;
using System.Globalization;
using System.Resources;
public class Example
{
public static void Main()
{
String[] numbers = { "one", "two", "three", "four", "five", "six",
"seven", "eight", "nine", "ten" };
var rm = new ResourceManager(typeof(NumberResources));
ResourceSet rs = rm.GetResourceSet(CultureInfo.CreateSpecificCulture("fr-FR"),
true, false);
if (rs == null) {
Console.WriteLine("No resource set.");
return;
}
foreach (var number in numbers)
Console.WriteLine("{0,-10} '{1}'", number + ":", rs.GetString(number));
}
}
internal class NumberResources {}
// The example displays the following output:
// one: 'un'
// two: 'deux'
// three: 'trois'
// four: 'quatre'
// five: ''
// six: ''
// seven: ''
// eight: ''
// nine: ''
// ten: ''
Imports System.Globalization
Imports System.Resources
Module Example
Public Sub Main()
Dim numbers() As String = { "one", "two", "three", "four", "five", "six", "seven", "eight", "nine", "ten" }
Dim rm As New ResourceManager(GetType(NumberResources))
Dim rs As ResourceSet = rm.GetResourceSet(CultureInfo.CreateSpecificCulture("fr-FR"), True, False)
If rs Is Nothing Then Console.WriteLine("No resource set.") : Exit Sub
For Each number In numbers
Console.WriteLine("{0,-10} '{1}'", number + ":", rs.GetString(number))
Next
End Sub
End Module
Public Class NumberResources
End Class
' The example displays the following output:
' one: 'un'
' two: 'deux'
' three: 'trois'
' four: 'quatre'
' five: ''
' six: ''
' seven: ''
' eight: ''
' nine: ''
' ten: ''
引数のcreateIfNotExists
値を にfalse
変更した場合、Resource Managerはフランス語の言語リソースをまだ読み込んでいないため、メソッド呼び出しは を返null
します。
注釈
返されるリソース セットは、指定したカルチャにローカライズされたリソースを表します。 リソースがそのカルチャtryParents
用にローカライズされておらず、 が の場合は、true
GetResourceSetリソース フォールバック ルールを使用して適切なリソースを読み込みます。 が false
で、カルチャ固有のリソース セットが見つからない場合tryParents
、メソッドは を返しますnull
。 リソース フォールバックの詳細については、リソースの パッケージ化とデプロイ に関する記事の「リソース フォールバック プロセス」セクションを参照してください。
適用対象
こちらもご覧ください
.NET