CultureAndRegionInfoBuilder コンストラクタ
アセンブリ: sysglobl (sysglobl.dll 内)
構文
Dim cultureName As String Dim flags As CultureAndRegionModifiers Dim instance As New CultureAndRegionInfoBuilder(cultureName, flags)
public function CultureAndRegionInfoBuilder ( cultureName : String, flags : CultureAndRegionModifiers )
- cultureName
カルチャの名前。
例外の種類 | 条件 |
---|---|
ArgumentNullException | cultureName が null 参照 (Visual Basic では Nothing) です。 |
ArgumentException | cultureName が空の文字列 ("") です。 または cultureName に、'0' ~ '9'、'a' ~ 'z'、'A' ~ 'Z'、ハイフン (-)、または アンダースコア (_) 以外の文字が含まれています。 または cultureName に構成要素を区切るためのハイフン (-) が含まれていますが、1 つまたは複数の prefix、language, region、または suffix 構成要素が在しません。言い換えると、2 つ以上のハイフンが隣接しています。 または または cultureName に構成要素を区切るためのハイフン (-) が含まれていますが、1 つまたは複数の構成要素名が 8 文字を超えています。 または cultureName の先頭または末尾にハイフン (-) またはアンダースコア (_) が含まれています。 または cultureName は、.NET Framework カルチャの代わりに代替並べ替え置換カルチャを指定します。たとえば、culturenName は、German-Germany カルチャの "de-DE" ではなく、"de-de_phoneb" です。これは、ドイツの電話帳のように文字列を並べ替えるカルチャです。 または flags に、無効な CultureAndRegionModifiers 値の組み合わせが含まれています。 または flags に Replacement または Neutral が含まれていて、cultureName に指定されているカルチャが見つかりません。 または flags に Replacement が含まれていて、cultureName に、.NET Framework に付属するカルチャを置き換えないユーザー作成のカスタム カルチャが指定されています。 または flags に Neutral が含まれていて、cultureName に、ニュートラル カルチャではないカルチャが指定されています。 または flags に Neutral が含まれていて、cultureName に、.NET Framework に付属する特定のカルチャを置き換えるユーザー作成のカスタム カルチャが指定されています。 |
cultureName プロパティは、新しい CultureAndRegionInfoBuilder オブジェクトの名前を指定します。
flags パラメータは、新しい CultureAndRegionInfoBuilder オブジェクトが新しいカスタム カルチャであるか、既存のニュートラル カルチャ、特定のカルチャ、または Windows ロケールを置き換えるかどうかを指定する CultureAndRegionModifiers 値です。
cultureName パラメータが既存の .NET Framework カルチャ、登録済みカスタム カルチャ、または Windows ロケールから生成されたカルチャを指定する場合、CultureAndRegionInfoBuilder コンストラクタは、自動的にカルチャおよび地域情報を新しい CultureAndRegionInfoBuilder オブジェクトに格納します。
新しい CultureAndRegionInfoBuilder オブジェクトにカルチャおよび地域情報を格納するには、LoadDataFromCultureInfo メソッドおよび LoadDataFromRegionInfo メソッドを使用します。
カスタム カルチャの名前新しいカスタム カルチャを作成する場合に cultureName パラメータで推奨される書式は、"[prefix-]language[-region][-suffix[…]]" です。ここで、language 構成要素は必須ですが、prefix、region、および suffix の各構成要素は省略可能です。各構成要素の最大長は 8 文字で、cultureName パラメータ全体の最大長は 84 文字です。
prefix 構成要素には、IANA (Internet Assigned Numbers Authority) 識別を使用します。IANA に登録されているカルチャ名には "i-" または "I-" を指定し、私的利用に予約されているカルチャ名には "x-" または "X-" を指定します。それ以外の場合は、prefix は必要ありません。詳細については、の RFC 3066『Tags for the Identification of Languages』を参照してください。
cultureName パラメータの language 構成要素は、ISO 639-1から派生した小文字の 2 文字のコードを指定します。region は、ISO 3166 から派生した大文字の 2 文字のコードを指定します。たとえば、"en-US" は、米国で使用されている英語を示します。region 構成要素を指定しない場合は、ニュートラル カルチャと見なされます。
.NET Framework に付属するカルチャと同じ名前の cultureName は、置換 (オーバーライド) カルチャを示します。置換カルチャのプロパティに割り当てることができる値は限られています。このような制限の詳細については、各プロパティの例外を参照してください。
suffix 構成要素は、類似のカルチャを区別するために使用します。たとえば、ABC と XYZ という 2 つの会社が、世界の異なる市場で自社製品を普及させるために新しい ASP.NET Web サービスを作成して共有しているとします。サービスを紹介する Web ページには、ユーザーのカルチャに合わせて、それぞれの会社でその地域で使用しているロゴや電話番号などの情報が表示されます。各 Web ページのカルチャ固有のコンテンツは、カルチャ名によって識別され、会社名によって修飾される別個のリソース ファイルに格納されます。たとえば、en-US カルチャおよび ja-JP カルチャのリソース ファイルには、en-US-ABC、en-US-XYZ、ja-JP-ABC、および ja-JP-XYZ という名前が付けられます。"ABC" および "XYZ" というサフィックスを使用することで、Web サービスは、同じアプリケーション ロジックを使用して、異なる市場に固有の情報を表示できます。
suffix 構成要素自体をサブコンポーネントで構成できます。その場合は、それぞれのサブコンポーネントをハイフンで区切り、各サブコンポーネントの最大長は 8 文字となります。たとえば、"en-US-honda-cars" が cultureName パラメータである場合、"-honda-cars" が suffix 構成要素です。
次のコード例では、私的利用プレフィックスを使用してカスタム カルチャを作成し、そのプロパティのセットをリストします。最初のプロパティは、カルチャの名前をリストします。
' This example demonstrates a System.Globalization.Culture- ' AndRegionInfoBuilder constructor and some of the properties ' of the CultureAndRegionInfoBuilder object that is created. ' Compile this example with a reference to sysglobl.dll. Imports System Imports System.Globalization Class Sample Public Shared Sub Main() ' Construct a new, privately used culture that extends the en-US culture ' provided by the .NET Framework. In this sample, the CultureAndRegion- ' Types.Specific parameter creates a minimal CultureAndRegionInfoBuilder ' object that you must populate with culture and region information. Dim cib As CultureAndRegionInfoBuilder = Nothing Try cib = New CultureAndRegionInfoBuilder("x-en-US-sample", _ CultureAndRegionModifiers.None) Catch ae As ArgumentException Console.WriteLine(ae) Return End Try ' Populate the new CultureAndRegionInfoBuilder object with culture information. Dim ci As New CultureInfo("en-US") cib.LoadDataFromCultureInfo(ci) ' Populate the new CultureAndRegionInfoBuilder object with region information. Dim ri As New RegionInfo("US") cib.LoadDataFromRegionInfo(ri) ' Display some of the properties for the x-en-US-sample custom culture. Console.Clear() Console.WriteLine("CultureName:. . . . . . . . . . {0}", cib.CultureName) Console.WriteLine("CultureEnglishName: . . . . . . {0}", cib.CultureEnglishName) Console.WriteLine("CultureNativeName:. . . . . . . {0}", cib.CultureNativeName) Console.WriteLine("GeoId:. . . . . . . . . . . . . {0}", cib.GeoId) Console.WriteLine("IsMetric: . . . . . . . . . . . {0}", cib.IsMetric) Console.WriteLine("ISOCurrencySymbol:. . . . . . . {0}", cib.ISOCurrencySymbol) Console.WriteLine("RegionEnglishName:. . . . . . . {0}", cib.RegionEnglishName) Console.WriteLine("RegionName: . . . . . . . . . . {0}", cib.RegionName) Console.WriteLine("RegionNativeName: . . . . . . . {0}", cib.RegionNativeName) Console.WriteLine("ThreeLetterISOLanguageName: . . {0}", cib.ThreeLetterISOLanguageName) Console.WriteLine("ThreeLetterISORegionName: . . . {0}", cib.ThreeLetterISORegionName) Console.WriteLine("ThreeLetterWindowsLanguageName: {0}", cib.ThreeLetterWindowsLanguageName) Console.WriteLine("ThreeLetterWindowsRegionName: . {0}", cib.ThreeLetterWindowsRegionName) Console.WriteLine("TwoLetterISOLanguageName: . . . {0}", cib.TwoLetterISOLanguageName) Console.WriteLine("TwoLetterISORegionName: . . . . {0}", cib.TwoLetterISORegionName) End Sub 'Main End Class 'Sample ' 'This code example produces the following results: ' 'CultureName:. . . . . . . . . . x-en-US-sample 'CultureEnglishName: . . . . . . English 'CultureNativeName:. . . . . . . English 'GeoId:. . . . . . . . . . . . . 244 'IsMetric: . . . . . . . . . . . False 'ISOCurrencySymbol:. . . . . . . USD 'RegionEnglishName:. . . . . . . United States 'RegionName: . . . . . . . . . . US 'RegionNativeName: . . . . . . . United States 'ThreeLetterISOLanguageName: . . eng 'ThreeLetterISORegionName: . . . USA 'ThreeLetterWindowsLanguageName: ENU 'ThreeLetterWindowsRegionName: . USA 'TwoLetterISOLanguageName: . . . en 'TwoLetterISORegionName: . . . . US '
// This example demonstrates a System.Globalization.Culture- // AndRegionInfoBuilder constructor and some of the properties // of the CultureAndRegionInfoBuilder object that is created. // Compile this example with a reference to sysglobl.dll. using System; using System.Globalization; class Sample { public static void Main() { // Construct a new, privately used culture that extends the en-US culture // provided by the .NET Framework. In this sample, the CultureAndRegion- // Types.Specific parameter creates a minimal CultureAndRegionInfoBuilder // object that you must populate with culture and region information. CultureAndRegionInfoBuilder cib = null; try { cib = new CultureAndRegionInfoBuilder( "x-en-US-sample", CultureAndRegionModifiers.None); } catch (ArgumentException ae) { Console.WriteLine(ae); return; } // Populate the new CultureAndRegionInfoBuilder object with culture information. CultureInfo ci = new CultureInfo("en-US"); cib.LoadDataFromCultureInfo(ci); // Populate the new CultureAndRegionInfoBuilder object with region information. RegionInfo ri = new RegionInfo("US"); cib.LoadDataFromRegionInfo(ri); // Display some of the properties for the x-en-US-sample custom culture. Console.Clear(); Console.WriteLine("CultureName:. . . . . . . . . . {0}", cib.CultureName); Console.WriteLine("CultureEnglishName: . . . . . . {0}", cib.CultureEnglishName); Console.WriteLine("CultureNativeName:. . . . . . . {0}", cib.CultureNativeName); Console.WriteLine("GeoId:. . . . . . . . . . . . . {0}", cib.GeoId); Console.WriteLine("IsMetric: . . . . . . . . . . . {0}", cib.IsMetric); Console.WriteLine("ISOCurrencySymbol:. . . . . . . {0}", cib.ISOCurrencySymbol); Console.WriteLine("RegionEnglishName:. . . . . . . {0}", cib.RegionEnglishName); Console.WriteLine("RegionName: . . . . . . . . . . {0}", cib.RegionName); Console.WriteLine("RegionNativeName: . . . . . . . {0}", cib.RegionNativeName); Console.WriteLine("ThreeLetterISOLanguageName: . . {0}", cib.ThreeLetterISOLanguageName); Console.WriteLine("ThreeLetterISORegionName: . . . {0}", cib.ThreeLetterISORegionName); Console.WriteLine("ThreeLetterWindowsLanguageName: {0}", cib.ThreeLetterWindowsLanguageName); Console.WriteLine("ThreeLetterWindowsRegionName: . {0}", cib.ThreeLetterWindowsRegionName); Console.WriteLine("TwoLetterISOLanguageName: . . . {0}", cib.TwoLetterISOLanguageName); Console.WriteLine("TwoLetterISORegionName: . . . . {0}", cib.TwoLetterISORegionName); } } /* This code example produces the following results: CultureName:. . . . . . . . . . x-en-US-sample CultureEnglishName: . . . . . . English CultureNativeName:. . . . . . . English GeoId:. . . . . . . . . . . . . 244 IsMetric: . . . . . . . . . . . False ISOCurrencySymbol:. . . . . . . USD RegionEnglishName:. . . . . . . United States RegionName: . . . . . . . . . . US RegionNativeName: . . . . . . . United States ThreeLetterISOLanguageName: . . eng ThreeLetterISORegionName: . . . USA ThreeLetterWindowsLanguageName: ENU ThreeLetterWindowsRegionName: . USA TwoLetterISOLanguageName: . . . en TwoLetterISORegionName: . . . . US */
// This example demonstrates a System.Globalization.Culture- // AndRegionInfoBuilder constructor and some of the properties // of a custom culture object created with the constructor. #using <sysglobl.dll> using namespace System; using namespace System::Globalization; int main() { CultureAndRegionInfoBuilder^ builder = gcnew CultureAndRegionInfoBuilder ("x-en-US-sample", CultureAndRegionModifiers::None); // Display some of the properties // for the en-US culture. Console::WriteLine("CultureName:. . . . . . . . . . {0}", builder->CultureName); Console::WriteLine("CultureEnglishName: . . . . . . {0}", builder->CultureEnglishName); Console::WriteLine("CultureNativeName:. . . . . . . {0}", builder->CultureNativeName); Console::WriteLine("GeoId:. . . . . . . . . . . . . {0}", builder->GeoId); Console::WriteLine("IsMetric: . . . . . . . . . . . {0}", builder->IsMetric); Console::WriteLine("ISOCurrencySymbol:. . . . . . . {0}", builder->ISOCurrencySymbol); Console::WriteLine("RegionEnglishName:. . . . . . . {0}", builder->RegionEnglishName); Console::WriteLine("RegionName: . . . . . . . . . . {0}", builder->RegionName); Console::WriteLine("RegionNativeName: . . . . . . . {0}", builder->RegionNativeName); Console::WriteLine("ThreeLetterISOLanguageName: . . {0}", builder->ThreeLetterISOLanguageName); Console::WriteLine("ThreeLetterISORegionName: . . . {0}", builder->ThreeLetterISORegionName); Console::WriteLine("ThreeLetterWindowsLanguageName: {0}", builder->ThreeLetterWindowsLanguageName); Console::WriteLine("ThreeLetterWindowsRegionName: . {0}", builder->ThreeLetterWindowsRegionName); Console::WriteLine("TwoLetterISOLanguageName: . . . {0}", builder->TwoLetterISOLanguageName); Console::WriteLine("TwoLetterISORegionName: . . . . {0}", builder->TwoLetterISORegionName); } /* This code example produces the following results: CultureName:. . . . . . . . . . en-US CultureEnglishName: . . . . . . English (United States) CultureNativeName:. . . . . . . English (United States) GeoId:. . . . . . . . . . . . . 244 IsMetric: . . . . . . . . . . . False ISOCurrencySymbol:. . . . . . . USD RegionEnglishName:. . . . . . . United States RegionName: . . . . . . . . . . US RegionNativeName: . . . . . . . United States ThreeLetterISOLanguageName: . . eng ThreeLetterISORegionName: . . . USA ThreeLetterWindowsLanguageName: ENU ThreeLetterWindowsRegionName: . USA TwoLetterISOLanguageName: . . . en TwoLetterISORegionName: . . . . US */
プラットフォーム
Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。
参照
CultureAndRegionInfoBuilder クラス
CultureAndRegionInfoBuilder メンバ
System.Globalization 名前空間
CultureTypes
CultureAndRegionModifiers
- CultureAndRegionInfoBuilder コンストラクタのページへのリンク