Aracılığıyla paylaş


RegionInfo Oluşturucular

Tanım

RegionInfo sınıfının yeni bir örneğini başlatır.

Aşırı Yüklemeler

RegionInfo(Int32)

Belirtilen kültür tanımlayıcısıyla ilişkili ülkeye/bölgeye göre sınıfının yeni bir örneğini RegionInfo başlatır.

RegionInfo(String)

Ülke/bölge veya ada göre belirtilen belirli bir kültüre göre sınıfının yeni bir örneğini RegionInfo başlatır.

RegionInfo(Int32)

Kaynak:
RegionInfo.cs
Kaynak:
RegionInfo.cs
Kaynak:
RegionInfo.cs

Belirtilen kültür tanımlayıcısıyla ilişkili ülkeye/bölgeye göre sınıfının yeni bir örneğini RegionInfo başlatır.

public:
 RegionInfo(int culture);
public RegionInfo (int culture);
new System.Globalization.RegionInfo : int -> System.Globalization.RegionInfo
Public Sub New (culture As Integer)

Parametreler

culture
Int32

Kültür tanımlayıcısı.

Özel durumlar

culture sabit, özel veya nötr bir kültür belirtir.

-veya-

Yalnızca .NET 6+: Ortamda genelleştirme sabit modu etkindir.

Örnekler

Aşağıdaki kod örneği, farklı şekilde oluşturulan iki örneğini RegionInfo karşılaştırır.

using namespace System;
using namespace System::Globalization;
int main()
{
   
   // Creates a RegionInfo using the ISO 3166 two-letter code.
   RegionInfo^ myRI1 = gcnew RegionInfo( "US" );
   
   // Creates a RegionInfo using a CultureInfo.LCID.
   RegionInfo^ myRI2 = gcnew RegionInfo( (gcnew CultureInfo( "en-US",false ))->LCID );
   
   // Compares the two instances.
   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.

The two RegionInfo instances are equal.

*/
using System;
using System.Globalization;

public class SamplesRegionInfo  {

   public static void Main()  {

      // Creates a RegionInfo using the ISO 3166 two-letter code.
      RegionInfo myRI1 = new RegionInfo( "US" );

      // Creates a RegionInfo using a CultureInfo.LCID.
      RegionInfo myRI2 = new RegionInfo( new CultureInfo("en-US",false).LCID );

      // Compares the two instances.
      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.

The two RegionInfo instances are equal.

*/
Imports System.Globalization


Public Class SamplesRegionInfo   

   Public Shared Sub Main()

      ' Creates a RegionInfo using the ISO 3166 two-letter code.
      Dim myRI1 As New RegionInfo("US")

      ' Creates a RegionInfo using a CultureInfo.LCID.
      Dim myRI2 As New RegionInfo(New CultureInfo("en-US", False).LCID)

      ' Compares the two instances.
      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.
'
'The two RegionInfo instances are equal.

Açıklamalar

RegionInfo(String) bir nesnenin örneğini oluşturmak RegionInfo için önerilen oluşturucudur. RegionInfo(Int32) Parametre olarak sayısal kültür tanımlayıcısı gerektiren oluşturucunun aksine, parametresi daha okunabilir bir kültür adı veya ülke kodudur.

Kültür tanımlayıcısı, ilgili Ulusal Dil Desteği (NLS) yerel ayar tanımlayıcısına eşlenir. Daha fazla bilgi için bkz. Windows LCID başvurusu.

Bu oluşturucu çağrılarak örneklenen yeni RegionInfo nesnenin özelliğinin Name değeri, birleşik dil ve ülke/bölge kodu için değil, ülke/bölge için ISO 3166 2 harfli koddur. Örneğin, bir RegionInfo nesnenin örneği İngilizce (Birleşik Devletler) kültürü için 0x0409 kültür tanımlayıcısı ile oluşturulursa, özelliğin Name değeri "US" olur. Buna karşılık, bir RegionInfo nesnenin örneği İngilizce (Birleşik Devletler) kültürü için birleşik dil ve ülke/bölge koduyla en-US oluşturulursa, özelliğin Name değeri .NET Framework 'de "en-US" ve .NET Core ve .NET 5+ içinde yalnızca "ABD" olur.

Ayrıca bkz.

Şunlara uygulanır

RegionInfo(String)

Kaynak:
RegionInfo.cs
Kaynak:
RegionInfo.cs
Kaynak:
RegionInfo.cs

Ülke/bölge veya ada göre belirtilen belirli bir kültüre göre sınıfının yeni bir örneğini RegionInfo başlatır.

public:
 RegionInfo(System::String ^ name);
public RegionInfo (string name);
new System.Globalization.RegionInfo : string -> System.Globalization.RegionInfo
Public Sub New (name As String)

Parametreler

name
String

Ülke/bölge için ISO 3166'da tanımlanan iki harfli kodu içeren bir dize.

-veya-

Belirli bir kültürün, özel kültürün veya Yalnızca Windows kültürünün kültür adını içeren bir dize. Kültür adı RFC 4646 biçiminde değilse, uygulamanız yalnızca ülke/bölge yerine tüm kültür adını belirtmelidir.

Özel durumlar

name, null değeridir.

name geçerli bir ülke/bölge adı veya belirli bir kültür adı değil.

-veya-

Yalnızca .NET 6+: Ortamda genelleştirme sabit modu etkindir.

Örnekler

Aşağıdaki kod örneği, farklı şekilde oluşturulan iki örneğini RegionInfo karşılaştırır.

using namespace System;
using namespace System::Globalization;
int main()
{
   
   // Creates a RegionInfo using the ISO 3166 two-letter code.
   RegionInfo^ myRI1 = gcnew RegionInfo( "US" );
   
   // Creates a RegionInfo using a CultureInfo.LCID.
   RegionInfo^ myRI2 = gcnew RegionInfo( (gcnew CultureInfo( "en-US",false ))->LCID );
   
   // Compares the two instances.
   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.

The two RegionInfo instances are equal.

*/
using System;
using System.Globalization;

public class SamplesRegionInfo  {

   public static void Main()  {

      // Creates a RegionInfo using the ISO 3166 two-letter code.
      RegionInfo myRI1 = new RegionInfo( "US" );

      // Creates a RegionInfo using a CultureInfo.LCID.
      RegionInfo myRI2 = new RegionInfo( new CultureInfo("en-US",false).LCID );

      // Compares the two instances.
      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.

The two RegionInfo instances are equal.

*/
Imports System.Globalization


Public Class SamplesRegionInfo   

   Public Shared Sub Main()

      ' Creates a RegionInfo using the ISO 3166 two-letter code.
      Dim myRI1 As New RegionInfo("US")

      ' Creates a RegionInfo using a CultureInfo.LCID.
      Dim myRI2 As New RegionInfo(New CultureInfo("en-US", False).LCID)

      ' Compares the two instances.
      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.
'
'The two RegionInfo instances are equal.

Aşağıdaki kod örneği, kültür adlarının kullanıldığı örnekleri RegionInfo oluşturur.

using namespace System;
using namespace System::Collections;
using namespace System::Globalization;

namespace Sample
{
    public ref class SamplesRegionInfo  
    {
    public: 
        static void Work()  
        {

            // Creates an array containing culture names.
            array <String^>^ commonCultures = 
                {"", "ar", "ar-DZ", "en", "en-US"};

            // Creates a RegionInfo for each of the culture names.
            // Note that "ar" is the culture name for the neutral 
            // culture  "Arabic", but it is also the region name for
            // the country/region "Argentina"; therefore, it does not 
            // fail as expected.
            Console::WriteLine("Without checks...");
            for each (String^ cultureID in commonCultures)
            {   
                try  
                {
                    RegionInfo^ region = 
                    gcnew RegionInfo(cultureID);
                }

                catch (ArgumentException^ ex)  
                {
                    Console::WriteLine(ex);
                }
            }

            Console::WriteLine();

            Console::WriteLine("Checking the culture"
                " names first...");

            for each (String^ cultureID in commonCultures)
            {
                if (cultureID->Length == 0)  
                {
                    Console::WriteLine(
                        "The culture is the invariant culture.");
                }
                else  
                {
                    CultureInfo^ culture = 
                        gcnew CultureInfo(cultureID, false);
                    if (culture->IsNeutralCulture)
                    {
                        Console::WriteLine("The culture {0} is "
                            "a neutral culture.", cultureID);
                    }
                    else   
                    {
                        Console::WriteLine("The culture {0} is "
                            "a specific culture.", cultureID);
                        try  
                        {
                            RegionInfo^ region = 
                                gcnew RegionInfo(cultureID);
                        }
                        catch (ArgumentException^ ex)  
                        {
                            Console::WriteLine(ex);
                        }
                    }
                }
            } 
            Console::ReadLine();
        }
    };
}

int main()
{
    Sample::SamplesRegionInfo::Work();
    return 0;
}

/*
This code produces the following output.

Without checks...
System.ArgumentException: Region name '' is not supported.
Parameter name: name
at System.Globalization.RegionInfo..ctor(String name)
at SamplesRegionInfo.Main()
System.ArgumentException: Region name 'en' is not supported.
Parameter name: name
at System.Globalization.CultureTableRecord..ctor(String regionName, 
   Boolean useUserOverride)
at System.Globalization.RegionInfo..ctor(String name)
at SamplesRegionInfo.Main()

Checking the culture names first...
The culture is the invariant culture.
The culture ar is a neutral culture.
The culture ar-DZ is a specific culture.
The culture en is a neutral culture.
The culture en-US is a specific culture.

*/
using System;
using System.Globalization;

public class SamplesRegionInfo  {

   public static void Main()  {

      // Creates an array containing culture names.
      String[] myCultures = new String[]  { "", "ar", "ar-DZ", "en", "en-US" };

      // Creates a RegionInfo for each of the culture names.
      //    Note that "ar" is the culture name for the neutral culture "Arabic",
      //    but it is also the region name for the country/region "Argentina";
      //    therefore, it does not fail as expected.
      Console.WriteLine("Without checks...");
      foreach (String culture in myCultures)  {
         try  {
            RegionInfo myRI = new RegionInfo( culture );
         }
         catch ( ArgumentException e )  {
            Console.WriteLine( e.ToString() );
         }
      }

      Console.WriteLine();

      Console.WriteLine( "Checking the culture names first..." );
      foreach (String culture in myCultures)  {
         if ( culture == "" )  {
            Console.WriteLine("The culture is the invariant culture.");
         }
         else  {
            CultureInfo myCI = new CultureInfo( culture, false );
            if ( myCI.IsNeutralCulture )
                {
                    Console.WriteLine( "The culture {0} is a neutral culture.", culture );
                }
                else   {
               Console.WriteLine( "The culture {0} is a specific culture.", culture );
               try  {
                  RegionInfo myRI = new RegionInfo( culture );
               }
               catch ( ArgumentException e )  {
                  Console.WriteLine( e.ToString() );
               }
            }
         }
      }
   }
}

/*
This code produces the following output.

Without checks...
System.ArgumentException: Region name '' is not supported.
Parameter name: name
   at System.Globalization.RegionInfo..ctor(String name)
   at SamplesRegionInfo.Main()
System.ArgumentException: Region name 'en' is not supported.
Parameter name: name
   at System.Globalization.CultureTableRecord..ctor(String regionName, Boolean useUserOverride)
   at System.Globalization.RegionInfo..ctor(String name)
   at SamplesRegionInfo.Main()

Checking the culture names first...
The culture is the invariant culture.
The culture ar is a neutral culture.
The culture ar-DZ is a specific culture.
The culture en is a neutral culture.
The culture en-US is a specific culture.

*/
Imports System.Globalization

Public Class SamplesRegionInfo

    Public Shared Sub Main()

        ' Creates an array containing culture names.
        Dim myCultures() As String = {"", "ar", "ar-DZ", "en", "en-US"}

        Dim culture As String

        ' Creates a RegionInfo for each of the culture names.
        '    Note that "ar" is the culture name for the neutral culture "Arabic",
        '    but it is also the region name for the country/region "Argentina";
        '    therefore, it does not fail as expected.
        Console.WriteLine("Without checks...")
        For Each culture In  myCultures
            Try
                Dim myRI As New RegionInfo(culture)
            Catch e As ArgumentException
                Console.WriteLine(e.ToString())
            End Try
        Next

        Console.WriteLine()

        Console.WriteLine("Checking the culture names first...")
        For Each culture In  myCultures
            If culture = "" Then
                Console.WriteLine("The culture is the invariant culture.")
            Else
                Dim myCI As New CultureInfo(culture, False)
                If myCI.IsNeutralCulture Then
                    Console.WriteLine("The culture {0} is a neutral culture.", culture)
                Else
                    Console.WriteLine("The culture {0} is a specific culture.", culture)
                    Try
                        Dim myRI As New RegionInfo(culture)
                    Catch e As ArgumentException
                        Console.WriteLine(e.ToString())
                    End Try
                End If
            End If
        Next
    End Sub  
End Class 
'The example displays the following output.
'
'Without checks...
'System.ArgumentException: Region name '' is not supported.
'Parameter name: name
'   at System.Globalization.RegionInfo..ctor(String name)
'   at SamplesRegionInfo.Main()
'System.ArgumentException: Region name 'en' is not supported.
'Parameter name: name
'   at System.Globalization.CultureTableRecord..ctor(String regionName, Boolean useUserOverride)
'   at System.Globalization.RegionInfo..ctor(String name)
'   at SamplesRegionInfo.Main()
'
'Checking the culture names first...
'The culture is the invariant culture.
'The culture ar is a neutral culture.
'The culture ar-DZ is a specific culture.
'The culture en is a neutral culture.
'The culture en-US is a specific culture.

Açıklamalar

name parametresi, ülke/bölge için tanımlanan kodlardan biri veya belirli, özel veya yalnızca Windows kültür adıdır. Vaka önemli değil. Ancak, Name, TwoLetterISORegionNameve ThreeLetterISORegionName özellikleri belirtilen kodu veya kültür adını büyük harfle döndürür.

Önceden tanımlanmış RegionInfo adlar ISO 3166: Ülke kodları bölümünde listelenmiştir.

parametresinde yalnızca ülke/bölge adı yerine belirli bir kültürün name adını sağlamanız gerekir. Örneğin, en-US İngilizce (Birleşik Devletler) veya es-US İspanyolca (Birleşik Devletler) için tercih edilir US çünkü ve CurrencyNativeName gibi NativeName özellikler belirli bir dili yansıtır. az-Latn-AZveya az-Cyrl-AZ tercih edilir AZ çünkü , CurrencyNativeNameve CurrencySymbol gibi NativeNameözellikler belirli bir betiği yansıtır. Önceden tanımlanmış kültür adları Windows LCID başvurusunda listelenir.

Bu oluşturucu, nötr bir kültür ise (İngilizce gibien) bir ArgumentException if name oluşturur.

Arayanlara Notlar

Bu oluşturucu yalnızca belirli kültürleri veya ülke/bölge kodlarını kabul eder. Ancak, bazı nötr kültür adları ülke/bölge kodlarıyla aynıdır. Bu durumda, name nötr bir kültür adı yerine ülke/bölge kodu olarak yorumlanır ve bu oluşturucu bir ArgumentExceptionoluşturmaz.

Şunlara uygulanır