共用方式為


RegionInfo 類別

本文提供此 API 參考文件的補充備註。

不同於 類別 CultureInfo ,類別 RegionInfo 不代表用戶喜好設定,也不相依於用戶的語言或文化特性。

與 RegionInfo 對象相關聯的名稱

對象的名稱 RegionInfo 是國家/地區 ISO 3166 中定義的兩個字母代碼之一。 案例並不重要。 NameTwoLetterISORegionNameThreeLetterISORegionName 屬性會以大寫傳回適當的代碼。 如需目前的名稱清單 RegionInfo ,請參閱 ISO 3166:國家/地區代碼

具現化 RegionInfo 物件

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

下列範例說明代表比利時之三個 對象的屬性值差異 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 Proxys」,而不是 「美國」。 單獨使用國家/地區名稱會產生US「美國」,而不論語言為何,因此您應該改用文化特性名稱。

  • 必須考慮腳本差異時。 例如,國家/地區 AZ 處理具有名稱和 az-Latn-AZaz-Cyrl-AZ亞塞拜然文化,而拉丁文和斯拉夫文字本對這個國家/地區來說可能大不相同。

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

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