RegionInfo クラス

定義

国/地域に関する情報が含まれます。

public ref class RegionInfo
public class RegionInfo
[System.Serializable]
public class RegionInfo
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public class RegionInfo
type RegionInfo = class
[<System.Serializable>]
type RegionInfo = class
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type RegionInfo = class
Public Class RegionInfo
継承
RegionInfo
属性

注釈

CultureInfo クラスとは異なり、RegionInfo クラスはユーザー設定を表すのではなく、ユーザーの言語やカルチャに依存しません。

RegionInfo オブジェクトに関連付けられている名前

RegionInfo オブジェクトの名前は、ISO 3166 で国/地域に対して定義されている 2 文字のコードの 1 つです。 大文字と小文字は区別されません。 NameTwoLetterISORegionName、およびThreeLetterISORegionNameのプロパティは、適切なコードを大文字で返します。 RegionInfo名の現在の一覧については、「ISO 3166: 国コード」を参照してください。

RegionInfo オブジェクトをインスタンス化する

RegionInfo オブジェクトをインスタンス化するには、RegionInfo(String) コンストラクターに 2 文字のリージョン名 (米国の場合は "US" など) を渡すか、英語 (米国) の場合は "en-US" などの特定のカルチャの名前を渡します。 ただし、 RegionInfo オブジェクトは完全に言語に依存しないため、2 文字の領域名の代わりに特定のカルチャ名を使用することをお勧めします。 RegionInfoDisplayNameNativeNameなど、いくつかのCurrencyNativeNameプロパティはカルチャ名によって異なります。

次の例は、ベルギーを表す 3 つのオブジェクトの RegionInfo プロパティ値の違いを示しています。 1 つ目はリージョン名 (BE) からのみインスタンス化され、2 番目と 3 番目はカルチャ名 (フランス語 (ベルギー) の場合は fr-BE 、オランダ語 (ベルギー) の場合は nl-BE ) からインスタンス化されます。 この例では、リフレクションを使用して、各 RegionInfo オブジェクトのプロパティ値を取得します。

using System;
using System.Globalization;
using System.Reflection;

public class Example
{
   public static void Main()
   {
      // Instantiate three Belgian RegionInfo objects.
      RegionInfo BE = new RegionInfo("BE");
      RegionInfo frBE = new RegionInfo("fr-BE");
      RegionInfo nlBE = new RegionInfo("nl-BE");

      RegionInfo[] regions = { BE, frBE, nlBE };
      PropertyInfo[] props = typeof(RegionInfo).GetProperties(BindingFlags.Instance | BindingFlags.Public);

      Console.WriteLine("{0,-30}{1,18}{2,18}{3,18}\n",
                        "RegionInfo Property", "BE", "fr-BE", "nl-BE");
      foreach (var prop in props) {
         Console.Write("{0,-30}", prop.Name);
         foreach (var region in regions)
            Console.Write("{0,18}", prop.GetValue(region, null));

         Console.WriteLine();
      }
   }
}
// The example displays the following output:
//    RegionInfo Property                           BE             fr-BE             nl-BE
//
//    Name                                          BE             fr-BE             nl-BE
//    EnglishName                              Belgium           Belgium           Belgium
//    DisplayName                              Belgium           Belgium           Belgium
//    NativeName                                België          Belgique            België
//    TwoLetterISORegionName                        BE                BE                BE
//    ThreeLetterISORegionName                     BEL               BEL               BEL
//    ThreeLetterWindowsRegionName                 BEL               BEL               BEL
//    IsMetric                                    True              True              True
//    GeoId                                         21                21                21
//    CurrencyEnglishName                         Euro              Euro              Euro
//    CurrencyNativeName                          euro              euro              euro
//    CurrencySymbol                                 €                 €                 €
//    ISOCurrencySymbol                            EUR               EUR               EUR

次のようなシナリオでは、 RegionInfo オブジェクトをインスタンス化するときに、国/地域名の代わりにカルチャ名を使用します。

  • 言語名が主に重要な場合。 たとえば、 es-US カルチャ名の場合、アプリケーションで "米国" ではなく "Estados Unidos" を表示する必要があります。 国/地域名 (US) のみを使用すると、言語に関係なく "米国" が生成されるため、代わりにカルチャ名を使用する必要があります。

  • スクリプトの違いを考慮する必要がある場合。 たとえば、国/地域 AZaz-Latn-AZaz-Cyrl-AZという名前のアゼルバイジャンの文化を扱っており、ラテン文字とキリル文字は、この国/地域で大きく異なる場合があります。

  • 詳細のメンテナンスが重要な場合。 RegionInfo メンバーによって返される値は、RegionInfo オブジェクトがカルチャ名またはリージョン名を使用してインスタンス化されたかどうかによって異なる場合があります。 たとえば、次の表は、 RegionInfo オブジェクトが "US" 領域、"en-US" カルチャ、および "es-US" カルチャを使用してインスタンス化された場合の戻り値の違いを示しています。

    メンバー "US" "en-US" "es-US"
    CurrencyNativeName US Dollar US Dollar Dólar de EE.UU.
    Name US en-US es-US
    NativeName United States United States Estados Unidos
    ToString US en-US es-US

Example

  The following example demonstrates several members of the <xref:System.Globalization.RegionInfo> class.

  :::code language="csharp" source="~/snippets/csharp/System.Globalization/RegionInfo/Overview/regioninfo.cs" id="Snippet1":::
  :::code language="vb" source="~/snippets/visualbasic/System.Globalization/RegionInfo/Overview/regioninfo.vb" id="Snippet1":::

コンストラクター

名前 説明
RegionInfo(Int32)

指定したカルチャ識別子に関連付けられている国/地域に基づいて、 RegionInfo クラスの新しいインスタンスを初期化します。

RegionInfo(String)

名前で指定された国/地域または特定のカルチャに基づいて、 RegionInfo クラスの新しいインスタンスを初期化します。

プロパティ

名前 説明
CurrencyEnglishName

国/地域で使用される通貨の名前 (英語) を取得します。

CurrencyNativeName

国/地域のネイティブ言語で書式設定された、国/地域で使用される通貨の名前を取得します。

CurrencySymbol

国/地域に関連付けられている通貨記号を取得します。

CurrentRegion

現在のスレッドで使用されている国/地域を表す RegionInfo を取得します。

DisplayName

ローカライズされたバージョンの .NET の言語の国/地域の完全な名前を取得します。

EnglishName

国/地域の完全な名前を英語で取得します。

GeoId

地理的な地域、国、市区町村、または場所の一意の識別番号を取得します。

IsMetric

国/地域が測定にメトリック システムを使用するかどうかを示す値を取得します。

ISOCurrencySymbol

国/地域に関連付けられている 3 文字の ISO 4217 通貨記号を取得します。

Name

現在の RegionInfo オブジェクトの名前または ISO 3166 の 2 文字の国/地域コードを取得します。

NativeName

国/地域のネイティブ言語で書式設定された国/地域の名前を取得します。

ThreeLetterISORegionName

国/地域の ISO 3166 で定義されている 3 文字のコードを取得します。

ThreeLetterWindowsRegionName

この RegionInfo によって表される国/地域にWindowsによって割り当てられた 3 文字のコードを取得します。

TwoLetterISORegionName

国/地域の ISO 3166 で定義されている 2 文字のコードを取得します。

メソッド

名前 説明
Equals(Object)

指定したオブジェクトが現在の RegionInfoと同じインスタンスであるかどうかを判断します。

GetHashCode()

現在の RegionInfoのハッシュ関数として機能し、ハッシュ アルゴリズムやハッシュ テーブルなどのデータ構造に適しています。

GetType()

現在のインスタンスの Type を取得します。

(継承元 Object)
MemberwiseClone()

現在の Objectの簡易コピーを作成します。

(継承元 Object)
ToString()

現在の RegionInfoに指定されたカルチャ名または ISO 3166 の 2 文字の国/地域コードを含む文字列を返します。

適用対象

こちらもご覧ください