語言

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 中定義的兩個字母代碼之一。 案例並不重要。 Name、 TwoLetterISORegionName和 ThreeLetterISORegionName 屬性會以大寫傳回適當的代碼。 如需目前的名稱清單 RegionInfo ,請參閱 ISO 3166:國家/地區代碼。

實例化 RegionInfo 物件

若要具現化 RegionInfo 物件,您可以傳遞 RegionInfo(String) 建構函式的兩個字母區域名稱,例如美國“US”,或特定文化特性的名稱,例如英文(美國)的“en-US”。 不過,建議您使用特定文化特性名稱,而不是雙字母區域名稱,因為 RegionInfo 對象與語言無關。 數個 RegionInfo 屬性,包括 DisplayName、 NativeName和 CurrencyNativeName,取決於文化特性名稱。

下列範例說明代表比利時之三個 對象的屬性值差異 RegionInfo 。 第一個僅由區域名稱(BE)實例化,而第二和第三個則分別由文化名稱實例化(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) 會產生「美國」,因此您應該改用文化特性名稱。

  • 當必須考慮腳本差異時。 例如,國家/地區 AZ 涉及名稱為 az-Latn-AZ 和 az-Cyrl-AZ 的亞塞拜然的文化,而且對於這個國家/地區來說,拉丁字母和西里爾字母的差異可能會很大。

  • 當維護細節很重要時。 成員 RegionInfo 回傳的值可能會因為物件是使用文化名稱還是區域名稱來實例化而有所不同。 例如,下表列出當物件使用 「US」 區域、“en-US” 文化特性和 “es-US” 文化特性具現化時,傳回值 RegionInfo 的差異。

    會員 "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

範例

  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":::

建構函式

名稱 Description
RegionInfo(Int32)

根據與指定文化識別碼相關的國家/地區初始化該 RegionInfo 類別的新實例。

RegionInfo(String)

根據國家/地區或特定文化(以名稱指定)初始化該 RegionInfo 類別的新實例。

屬性

名稱 Description
CurrencyEnglishName

取得該國家/地區所使用的貨幣名稱。

CurrencyNativeName

取得該國/地區所使用的貨幣名稱,並以該國/地區的母語格式化。

CurrencySymbol

會獲得與國家/地區相關的貨幣符號。

CurrentRegion

會得到 RegionInfo 代表當前討論串使用的國家/地區的 that。

DisplayName

會以 .NET 在地化版本的語言顯示國家/地區的完整名稱。

EnglishName

會獲得國家/地區的完整英文名稱。

GeoId

可獲得地理區域、國家、城市或地點的唯一識別號碼。

IsMetric

會得到一個數值,表示該國家/地區是否使用公制系統進行測量。

ISOCurrencySymbol

取得與國家/地區相關的三位元 ISO 4217 貨幣符號。

Name

取得當前 RegionInfo 物件的名稱或 ISO 3166 兩字母國家/地區代碼。

NativeName

會取得國家/地區名稱,並以該國/地區的母語格式呈現。

ThreeLetterISORegionName

取得ISO 3166中定義的三字母代碼,適用於該國家/地區。

ThreeLetterWindowsRegionName

獲得Windows分配給國家/地區的三字母代碼,該代碼由RegionInfo。

TwoLetterISORegionName

取得ISO 3166中定義的兩字母代碼,適用於該國家/地區。

方法

名稱 Description
Equals(Object)

判斷指定的物件是否與當前 RegionInfo的實例相同。

GetHashCode()

作為當前 RegionInfo的雜湊函數,適用於雜湊演算法與資料結構,例如雜湊表。

GetType()

取得目前實例的 Type。

(繼承來源 Object)
MemberwiseClone()

建立目前 Object的淺層複本。

(繼承來源 Object)
ToString()

回傳包含文化名稱或 ISO 3166 兩字母國家/地區代碼的字串,該代碼為當前 RegionInfo。

適用於

另請參閱