RegionInfo Konstruktoren
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Initialisiert eine neue Instanz der RegionInfo-Klasse.
Überlädt
| Name | Beschreibung |
|---|---|
| RegionInfo(Int32) |
Initialisiert eine neue Instanz der RegionInfo Klasse basierend auf dem Land/der Region, das dem angegebenen Kulturbezeichner zugeordnet ist. |
| RegionInfo(String) |
Initialisiert eine neue Instanz der RegionInfo Klasse basierend auf dem Land/der Region oder einer bestimmten Kultur, die durch den Namen angegeben wird. |
RegionInfo(Int32)
- Quelle:
- RegionInfo.cs
- Quelle:
- RegionInfo.cs
- Quelle:
- RegionInfo.cs
- Quelle:
- RegionInfo.cs
- Quelle:
- RegionInfo.cs
Initialisiert eine neue Instanz der RegionInfo Klasse basierend auf dem Land/der Region, das dem angegebenen Kulturbezeichner zugeordnet ist.
public:
RegionInfo(int culture);
public RegionInfo(int culture);
new System.Globalization.RegionInfo : int -> System.Globalization.RegionInfo
Public Sub New (culture As Integer)
Parameter
- culture
- Int32
Ein Kulturbezeichner.
Ausnahmen
culture Gibt entweder eine invariante, benutzerdefinierte oder neutrale Kultur an.
- oder -
Nur .NET 6+: Der Modus "Globalization-invariant" ist in der Umgebung aktiviert.
Beispiele
Im folgenden Codebeispiel werden zwei Instanzen davon RegionInfo unterschiedlich verglichen.
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.
Hinweise
RegionInfo(String) ist der empfohlene Konstruktor zum Instanziieren eines RegionInfo Objekts. Im Gegensatz zum Konstruktor, der RegionInfo(Int32) einen numerischen Kulturbezeichner als Parameter erfordert, ist sein Parameter ein lesbarerer Kulturname oder Ländercode.
Der Kulturbezeichner wird dem entsprechenden GEBIETSSCHEMA-BEZEICHNER (National Language Support, NLS) zugeordnet. Weitere Informationen finden Sie in der Windows LCID-Referenz.
Der Wert der Name Eigenschaft des neuen RegionInfo Objekts, das durch Aufrufen dieses Konstruktors instanziiert wird, ist der ISO 3166 2-Buchstaben-Code für das Land/die Region, nicht die kombinierte Sprache und den Code für Land/Region. Wenn z. B. ein RegionInfo Objekt mit dem Kulturbezeichner 0x0409 für die Englische Kultur (USA) instanziiert wird, lautet der Wert der Name Eigenschaft "US". Wenn ein RegionInfo Objekt dagegen mit dem kombinierten Sprach- und Länder-/Regionscode en-US für die Englisch-Kultur (USA) instanziiert wird, lautet der Wert der Name Eigenschaft "en-US" in .NET Framework und nur "US" in .NET Core und .NET 5+.
Weitere Informationen
Gilt für:
RegionInfo(String)
- Quelle:
- RegionInfo.cs
- Quelle:
- RegionInfo.cs
- Quelle:
- RegionInfo.cs
- Quelle:
- RegionInfo.cs
- Quelle:
- RegionInfo.cs
Initialisiert eine neue Instanz der RegionInfo Klasse basierend auf dem Land/der Region oder einer bestimmten Kultur, die durch den Namen angegeben wird.
public:
RegionInfo(System::String ^ name);
public RegionInfo(string name);
new System.Globalization.RegionInfo : string -> System.Globalization.RegionInfo
Public Sub New (name As String)
Parameter
- name
- String
Eine Zeichenfolge mit zwei Buchstaben, die in ISO 3166 für Land/Region definiert ist.
- oder -
Eine Zeichenfolge, die den Kulturnamen für eine bestimmte Kultur, benutzerdefinierte Kultur oder windows-only-Kultur enthält. Wenn sich der Kulturname nicht im RFC 4646-Format befindet, sollte Ihre Anwendung den gesamten Kulturnamen anstelle des Landes/der Region angeben.
Ausnahmen
name ist null.
name ist kein gültiger Name des Landes/der Region oder eines bestimmten Kulturnamens.
- oder -
Nur .NET 6+: Der Modus "Globalization-invariant" ist in der Umgebung aktiviert.
Beispiele
Im folgenden Codebeispiel werden zwei Instanzen davon RegionInfo unterschiedlich verglichen.
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.
Im folgenden Codebeispiel werden Instanzen der Verwendung von RegionInfo Kulturnamen erstellt.
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.
Hinweise
Der name Parameter ist entweder einer der Codes, die für Land/Region definiert sind, oder ein bestimmter, benutzerdefinierter oder Nur-Windows-Kulturname. Der Fall ist nicht bedeutend. Die NameEigenschaften TwoLetterISORegionNamegeben ThreeLetterISORegionName jedoch den angegebenen Code- oder Kulturnamen in Großbuchstaben zurück.
Die vordefinierten RegionInfo Namen sind in ISO 3166 aufgeführt: Ländercodes.
Sie sollten den Namen einer bestimmten Kultur anstelle eines Landes-/Regionsnamens name im Parameter angeben. Beispielsweise ist für Englisch (USA) oder es-US für Spanisch (USA) vorzuziehenUS, en-US da Eigenschaften wie zNativeName. B. eine bestimmte Sprache widerspiegeln.CurrencyNativeName
az-Latn-AZ oder az-Cyrl-AZ ist vorzuziehen AZ , weil Eigenschaften wie NativeName, CurrencyNativeName, und CurrencySymbol spiegeln ein bestimmtes Skript. Die vordefinierten Kulturnamen werden in der Windows LCID-Referenz aufgeführt.
Dieser Konstruktor löst eine ArgumentException neutrale name Kultur (z en . B. für Englisch) aus.
Hinweise für Aufrufer
Dieser Konstruktor akzeptiert nur bestimmte Kulturen oder Länder-/Regionscodes. Einige neutrale Kulturnamen sind jedoch identisch mit Länder-/Regionscodes. In diesem Fall name wird anstelle eines neutralen Kulturnamens als Länder-/Regionscode interpretiert, und dieser Konstruktor löst ArgumentExceptionkeinen .