RegionInfo Třída

Definice

Obsahuje informace o zemi nebo oblasti.

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
Dědičnost
RegionInfo
Atributy

Příklady

Následující příklad ukazuje několik členů RegionInfo třídy.

using namespace System;
using namespace System::Globalization;
int main()
{
   
   // Displays the property values of the RegionInfo for "US".
   RegionInfo^ myRI1 = gcnew RegionInfo( "US" );
   Console::WriteLine( "   Name:                         {0}", myRI1->Name );
   Console::WriteLine( "   DisplayName:                  {0}", myRI1->DisplayName );
   Console::WriteLine( "   EnglishName:                  {0}", myRI1->EnglishName );
   Console::WriteLine( "   IsMetric:                     {0}", myRI1->IsMetric );
   Console::WriteLine( "   ThreeLetterISORegionName:     {0}", myRI1->ThreeLetterISORegionName );
   Console::WriteLine( "   ThreeLetterWindowsRegionName: {0}", myRI1->ThreeLetterWindowsRegionName );
   Console::WriteLine( "   TwoLetterISORegionName:       {0}", myRI1->TwoLetterISORegionName );
   Console::WriteLine( "   CurrencySymbol:               {0}", myRI1->CurrencySymbol );
   Console::WriteLine( "   ISOCurrencySymbol:            {0}", myRI1->ISOCurrencySymbol );
   Console::WriteLine();
   
   // Compares the RegionInfo above with another RegionInfo created using CultureInfo.
   RegionInfo^ myRI2 = gcnew RegionInfo( (gcnew CultureInfo( "en-US",false ))->LCID );
   if ( myRI1->Equals( myRI2 ) )
      Console::WriteLine( "The two RegionInfo instances are equal." );
   else
      Console::WriteLine( "The two RegionInfo instances are NOT equal." );
}

/*
This code produces the following output.

   Name:                         US
   DisplayName:                  United States
   EnglishName:                  United States
   IsMetric:                     False
   ThreeLetterISORegionName:     USA
   ThreeLetterWindowsRegionName: USA
   TwoLetterISORegionName:       US
   CurrencySymbol:               $
   ISOCurrencySymbol:            USD

The two RegionInfo instances are equal.

*/
using System;
using System.Globalization;

public class SamplesRegionInfo  {

   public static void Main()  {

      // Displays the property values of the RegionInfo for "US".
      RegionInfo myRI1 = new RegionInfo( "US" );
      Console.WriteLine( "   Name:                         {0}", myRI1.Name );
      Console.WriteLine( "   DisplayName:                  {0}", myRI1.DisplayName );
      Console.WriteLine( "   EnglishName:                  {0}", myRI1.EnglishName );
      Console.WriteLine( "   IsMetric:                     {0}", myRI1.IsMetric );
      Console.WriteLine( "   ThreeLetterISORegionName:     {0}", myRI1.ThreeLetterISORegionName );
      Console.WriteLine( "   ThreeLetterWindowsRegionName: {0}", myRI1.ThreeLetterWindowsRegionName );
      Console.WriteLine( "   TwoLetterISORegionName:       {0}", myRI1.TwoLetterISORegionName );
      Console.WriteLine( "   CurrencySymbol:               {0}", myRI1.CurrencySymbol );
      Console.WriteLine( "   ISOCurrencySymbol:            {0}", myRI1.ISOCurrencySymbol );
      Console.WriteLine();

      // Compares the RegionInfo above with another RegionInfo created using CultureInfo.
      RegionInfo myRI2 = new RegionInfo( new CultureInfo("en-US",false).LCID );
      if ( myRI1.Equals( myRI2 ) )
         Console.WriteLine( "The two RegionInfo instances are equal." );
      else
         Console.WriteLine( "The two RegionInfo instances are NOT equal." );
   }
}

/*
This code produces the following output.

   Name:                         US
   DisplayName:                  United States
   EnglishName:                  United States
   IsMetric:                     False
   ThreeLetterISORegionName:     USA
   ThreeLetterWindowsRegionName: USA
   TwoLetterISORegionName:       US
   CurrencySymbol:               $
   ISOCurrencySymbol:            USD

The two RegionInfo instances are equal.

*/
Imports System.Globalization


Public Class SamplesRegionInfo   

   Public Shared Sub Main()

      ' Displays the property values of the RegionInfo for "US".
      Dim myRI1 As New RegionInfo("US")
      Console.WriteLine("   Name:                         {0}", myRI1.Name)
      Console.WriteLine("   DisplayName:                  {0}", myRI1.DisplayName)
      Console.WriteLine("   EnglishName:                  {0}", myRI1.EnglishName)
      Console.WriteLine("   IsMetric:                     {0}", myRI1.IsMetric)
      Console.WriteLine("   ThreeLetterISORegionName:     {0}", myRI1.ThreeLetterISORegionName)
      Console.WriteLine("   ThreeLetterWindowsRegionName: {0}", myRI1.ThreeLetterWindowsRegionName)
      Console.WriteLine("   TwoLetterISORegionName:       {0}", myRI1.TwoLetterISORegionName)
      Console.WriteLine("   CurrencySymbol:               {0}", myRI1.CurrencySymbol)
      Console.WriteLine("   ISOCurrencySymbol:            {0}", myRI1.ISOCurrencySymbol)
      Console.WriteLine()

      ' Compares the RegionInfo above with another RegionInfo created using CultureInfo.
      Dim myRI2 As New RegionInfo(New CultureInfo("en-US", False).LCID)
      If myRI1.Equals(myRI2) Then
         Console.WriteLine("The two RegionInfo instances are equal.")
      Else
         Console.WriteLine("The two RegionInfo instances are NOT equal.")
      End If 

   End Sub

End Class


'This code produces the following output.
'
'   Name:                         US
'   DisplayName:                  United States
'   EnglishName:                  United States
'   IsMetric:                     False
'   ThreeLetterISORegionName:     USA
'   ThreeLetterWindowsRegionName: USA
'   TwoLetterISORegionName:       US
'   CurrencySymbol:               $
'   ISOCurrencySymbol:            USD
'
'The two RegionInfo instances are equal.

Poznámky

CultureInfo Na rozdíl od třídy RegionInfo třída nepředstavuje uživatelské předvolby a nezávisí na jazyce nebo jazykové verzi uživatele.

Názvy přidružené k objektu RegionInfo

Název objektu RegionInfo je jedním ze dvou písmen definovaných v ISO 3166 pro zemi nebo oblast. Případ není významný. Funkce Name, TwoLetterISORegionNamea ThreeLetterISORegionName vlastnosti vrátí příslušné kódy velkými písmeny. Aktuální seznam RegionInfo názvů najdete v tématu ISO 3166: Kódy zemí.

Vytvoření instance objektu RegionInfo

RegionInfo Pokud chcete vytvořit instanci objektuRegionInfo(String), předáte konstruktor název oblasti se dvěma písmeny, například "USA" pro USA, nebo název konkrétní jazykové verze, například "en-US" pro angličtinu (USA). Doporučujeme ale místo názvu oblasti se dvěma písmeny použít konkrétní název jazykové verze, protože RegionInfo objekt není zcela nezávislý na jazyce. Několik RegionInfo vlastností, včetně DisplayName, NativeNamea CurrencyNativeName, závisí na názvech jazykové verze.

Následující příklad znázorňuje rozdíl v RegionInfo hodnotách vlastností pro tři objekty, které představují Belgie. První je vytvořena pouze z názvu oblasti (BE), zatímco druhý a třetí se vytvoří instance z názvů kultury (fr-BE pro francouzštinu (Belgie) a nl-BE pro nizozemštinu (Belgie), v uvedeném pořadí). Příklad používá reflexi k načtení hodnot vlastností každého RegionInfo objektu.

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
Imports System.Globalization
Imports System.Reflection

Module Example
   Public Sub Main()
      ' Instantiate three Belgian RegionInfo objects.
      Dim BE As New RegionInfo("BE")
      Dim frBE As New RegionInfo("fr-BE")
      Dim nlBE As New RegionInfo("nl-BE")

      Dim regions() As RegionInfo = { BE, frBE, nlBE }
      Dim props() As PropertyInfo = GetType(RegionInfo).GetProperties(BindingFlags.Instance Or BindingFlags.Public)
      
      Console.WriteLine("{0,-30}{1,18}{2,18}{3,18}", 
                        "RegionInfo Property", "BE", "fr-BE", "nl-BE")
      Console.WriteLine()
      For Each prop As PropertyInfo In props
         Console.Write("{0,-30}", prop.Name)
         For Each region In regions
            Console.Write("{0,18}", prop.GetValue(region, Nothing))
         Next
         Console.WriteLine()
      Next
   End Sub
End Module
' 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

Ve scénářích, jako je například následující, použijte při vytváření instance RegionInfo objektu názvy jazykových verzí místo názvů zemí nebo oblastí:

  • Pokud je název jazyka primární důležitostí. Například pro es-US název jazykové verze budete pravděpodobně chtít, aby vaše aplikace místo "USA" zobrazovala "Estados Unidos". Použití názvu země/oblasti (US) samostatně dává "USA" bez ohledu na jazyk, takže místo toho byste měli pracovat s názvem jazykové verze.

  • Pokud je nutné zvážit rozdíly mezi skripty. Například země/oblast AZ se zabývá ázerbájdžánskými kulturami, které mají jména az-Latn-AZ a az-Cyrl-AZa latinky a cyrilice mohou být pro tuto zemi nebo oblast velmi odlišné.

  • Pokud je údržba podrobností důležitá. Hodnoty vrácené RegionInfo členy se můžou lišit v závislosti na tom, jestli RegionInfo objekt vytvořil instanci pomocí názvu jazykové verze nebo názvu oblasti. Následující tabulka například uvádí rozdíly v návratových hodnotách, když RegionInfo je objekt vytvořený pomocí oblasti USA, jazykové verze "en-US" a "es-US".

    Člen "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

Konstruktory

RegionInfo(Int32)

Inicializuje novou instanci RegionInfo třídy na základě země nebo oblasti přidružené k zadanému identifikátoru jazykové verze.

RegionInfo(String)

Inicializuje novou instanci RegionInfo třídy na základě země nebo oblasti nebo konkrétní jazykové verze určené názvem.

Vlastnosti

CurrencyEnglishName

Získá název v angličtině měny použité v zemi/oblasti.

CurrencyNativeName

Získá název měny použité v zemi/oblasti, formátovaný v nativním jazyce země/oblasti.

CurrencySymbol

Získá symbol měny přidružený k zemi nebo oblasti.

CurrentRegion

RegionInfo Získá tu, která představuje zemi nebo oblast používanou aktuálním vláknem.

DisplayName

Získá úplný název země/oblasti v jazyce lokalizované verze .NET.

EnglishName

Získá úplný název země/oblasti v angličtině.

GeoId

Získá jedinečné identifikační číslo pro geografickou oblast, zemi, město nebo umístění.

IsMetric

Získá hodnotu určující, zda země/oblast používá systém metrik pro měření.

ISOCurrencySymbol

Získá tříznakový symbol měny ISO 4217 přidružený k zemi/oblasti.

Name

Získá název nebo ISO 3166 dvoumísmenný kód země/oblasti pro aktuální RegionInfo objekt.

NativeName

Získá název země nebo oblasti formátované v nativním jazyce země/oblasti.

ThreeLetterISORegionName

Získá třímísmenný kód definovaný v ISO 3166 pro zemi/oblast.

ThreeLetterWindowsRegionName

Získá třímísmenný kód přiřazený Windows zemi nebo oblasti reprezentované tímto RegionInfokódem .

TwoLetterISORegionName

Získá dvoumísmenný kód definovaný v ISO 3166 pro zemi/oblast.

Metody

Equals(Object)

Určuje, zda zadaný objekt je stejná instance jako aktuální RegionInfo.

GetHashCode()

Slouží jako hashovací funkce pro aktuální RegionInfo, vhodný pro hashovací algoritmy a datové struktury, jako je například hashovací tabulka.

GetType()

Type Získá aktuální instanci.

(Zděděno od Object)
MemberwiseClone()

Vytvoří použádnou kopii aktuálního souboru Object.

(Zděděno od Object)
ToString()

Vrátí řetězec obsahující název jazykové verze nebo kódy ISO 3166 se dvěma písmeny země/oblasti zadané pro aktuální RegionInfo.

Platí pro

Viz také