CultureInfo Konstruktoren

Definition

Initialisiert eine neue Instanz der CultureInfo-Klasse.

Überlädt

CultureInfo(Int32)

Initialisiert eine neue Instanz der CultureInfo-Klasse auf der Grundlage der durch den Kulturbezeichner angegebenen Kultur.

CultureInfo(String)

Initialisiert eine neue Instanz der CultureInfo-Klasse auf der Grundlage der durch den Namen angegebenen Kultur.

CultureInfo(Int32, Boolean)

Initialisiert eine neue instance der CultureInfo -Klasse basierend auf der Kultur, die durch den Kulturbezeichner und einen Wert angegeben wird, der angibt, ob die vom Benutzer ausgewählten Kultureinstellungen von Windows verwendet werden sollen.

CultureInfo(String, Boolean)

Initialisiert eine neue instance der -Klasse basierend auf der CultureInfo kultur, die durch den Namen und einen Wert angegeben wird, der angibt, ob die vom Benutzer ausgewählten Kultureinstellungen von Windows verwendet werden sollen.

CultureInfo(Int32)

Source:
CultureInfo.cs
Source:
CultureInfo.cs
Source:
CultureInfo.cs

Initialisiert eine neue Instanz der CultureInfo-Klasse auf der Grundlage der durch den Kulturbezeichner angegebenen Kultur.

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

Parameter

culture
Int32

Ein vordefinierter CultureInfo-Bezeichner, die LCID-Eigenschaft eines vorhandenen CultureInfo-Objekts oder ein Nur-Windows-Kulturbezeichner.

Ausnahmen

culture ist kleiner als Null.

culture ist kein gültiger Kulturbezeichner. Weitere Informationen finden Sie im Abschnitt „Hinweise zu Aufrufern“.

Hinweise

Vordefinierte Kulturbezeichner für Kulturen, die auf dem Windows-System verfügbar sind, werden in der Spalte Language-Tag in der Liste der von Windows unterstützten Sprach-/Regionsnamen aufgeführt. Kulturnamen befolgen den von BCP 47 definierten Standard.

In den meisten Fällen wird der culture Parameter dem entsprechenden NLS-Gebietsschemabezeichner (National Language Support) zugeordnet. Der Wert des culture Parameters wird zum Wert der LCID -Eigenschaft des neuen CultureInfo.

Es wird empfohlen, den Gebietsschemanamenkonstruktor CultureInfo.CultureInfoaufzurufen, da Gebietsschemanamen LCIDs vorzuziehen sind. Für benutzerdefinierte Gebietsschemas ist ein Gebietsschemaname erforderlich.

Der Benutzer kann einige der Werte, die der aktuellen Windows-Kultur zugeordnet sind, über den Teil der Regional- und Sprachoptionen von Systemsteuerung außer Kraft setzen. Beispielsweise kann der Benutzer das Datum in einem anderen Format anzeigen oder eine andere Währung als die Standardwährung für die Kultur verwenden. Wenn der angegebene Kulturbezeichner mit dem Kulturbezeichner der aktuellen Windows-Kultur übereinstimmt, erstellt dieser Konstruktor einenCultureInfo, der diese Außerkraftsetzungen verwendet, einschließlich Benutzereinstellungen für die Eigenschaften der von der DateTimeFormatDateTimeFormatInfo -Eigenschaft zurückgegebenen instance und die Eigenschaften der von der NumberFormatInfoNumberFormat -Eigenschaft zurückgegebenen instance. Wenn die Benutzereinstellungen nicht mit der Kultur kompatibel sind, die dem CultureInfo zugeordnet ist (z. B. wenn der ausgewählte Kalender nicht zu den OptionalCalendarsgehört), sind die Ergebnisse der Methoden und die Werte der Eigenschaften nicht definiert.

Wenn der angegebene Kulturbezeichner nicht mit dem Bezeichner der aktuellen Windows-Kultur übereinstimmt, erstellt dieser Konstruktor einen CultureInfo , der die Standardwerte für die angegebene Kultur verwendet.

Die UseUserOverride -Eigenschaftensatz ist immer auf true.

Angenommen, Arabisch (Saudi-Arabien) ist die aktuelle Windows-Kultur und der Benutzer hat den Kalender von Hijri in Gregorianisch geändert.

Für Kulturen, die den Euro verwenden, legen .NET Framework und Windows XP die Standardwährung auf Euro fest. Ältere Versionen von Windows tun dies jedoch nicht. Wenn der Benutzer einer älteren Version von Windows die Währungseinstellung nicht über den Teil der Regional- und Sprachoptionen von Systemsteuerung geändert hat, ist die Währung möglicherweise falsch. Um die .NET Framework Standardeinstellung für die Währung zu verwenden, sollte die Anwendung eine CultureInfo Konstruktorüberladung verwenden, die einen useUserOverride Parameter akzeptiert und auf falsefestlegen.

Hinweis

Aus Gründen der Abwärtskompatibilität weist eine Kultur, die mit einem culture Parameter von 0x0004 oder 0x7c04 erstellt wurde, die Name Eigenschaft oder zh-CHSzh-CHTauf. Stattdessen sollten Sie die Kultur lieber mit den aktuellen Standardkulturnamen von zh-Hans oder zh-Hanterstellen, es sei denn, Sie haben einen Grund für die Verwendung der älteren Namen.

Hinweise für Aufrufer

.NET Framework 3.5 und früheren Versionen lösen einen ausArgumentException, wenn culture kein gültiger Kulturbezeichner ist. Ab .NET Framework 4 löst dieser Konstruktor einen ausCultureNotFoundException. Beginnend mit Apps, die unter .NET Framework 4 oder höher unter Windows 7 oder höher ausgeführt werden, versucht die Methode, ein CultureInfo Objekt abzurufen, dessen Bezeichner aus dem Betriebssystem stammtculture. Wenn das Betriebssystem diese Kultur nicht unterstützt, löst die Methode eine Ausnahme ausCultureNotFoundException.

In .NET 6 und höheren Versionen wird ein CultureNotFoundException ausgelöst, wenn die App in einer Umgebung ausgeführt wird, in der der globalisierungsinvariante Modus aktiviert ist, z. B. einige Docker-Container, und eine andere Kultur als die invariante Kultur angegeben wird.

Weitere Informationen

Gilt für:

CultureInfo(String)

Source:
CultureInfo.cs
Source:
CultureInfo.cs
Source:
CultureInfo.cs

Initialisiert eine neue Instanz der CultureInfo-Klasse auf der Grundlage der durch den Namen angegebenen Kultur.

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

Parameter

name
String

Ein vordefinierter CultureInfo-Name, eine Name-Eigenschaft einer vorhandenen CultureInfo-Klasse oder ein nur für Windows definierter Kulturname. Bei name wird nicht zwischen Groß- und Kleinschreibung unterschieden.

Ausnahmen

name ist NULL.

name ist kein gültiger Kulturname. Weitere Informationen finden Sie im Abschnitt "Hinweise zu Aufrufern".

Beispiele

Im folgenden Beispiel wird die aktuelle Kultur abgerufen. Wenn es sich um etwas anderes als die französische Kultur handelt, wird der CultureInfo(String) Konstruktor aufgerufen, um ein CultureInfo Objekt zu instanziieren, das die französische Kultur (Frankreich) darstellt und es zur aktuellen Kultur macht. Andernfalls instanziiert es ein CultureInfo Objekt, das die französische Kultur (Luxemburg) darstellt und es zur aktuellen Kultur macht.

using System;
using System.Globalization;

public class ChangeEx1
{
    public static void Main()
    {
        CultureInfo current = CultureInfo.CurrentCulture;
        Console.WriteLine("The current culture is {0}", current.Name);
        CultureInfo newCulture;
        if (current.Name.Equals("fr-FR"))
            newCulture = new CultureInfo("fr-LU");
        else
            newCulture = new CultureInfo("fr-FR");

        CultureInfo.CurrentCulture = newCulture;
        Console.WriteLine("The current culture is now {0}",
                          CultureInfo.CurrentCulture.Name);
    }
}
// The example displays output like the following:
//     The current culture is en-US
//     The current culture is now fr-FR
Imports System.Globalization

Module Example
   Public Sub Main()
      Dim current As CultureInfo = CultureInfo.CurrentCulture
      Console.WriteLine("The current culture is {0}", current.Name)
      Dim newCulture As CultureInfo
      If current.Name.Equals("fr-FR") Then
         newCulture = New CultureInfo("fr-LU")
      Else
         newCulture = new CultureInfo("fr-FR")
      End If

      CultureInfo.CurrentCulture = newCulture
      Console.WriteLine("The current culture is now {0}",
                        CultureInfo.CurrentCulture.Name)
   End Sub
End Module
' The example displays output like the following:
'     The current culture is en-US
'     The current culture is now fr-FR

Hinweise

Eine Liste der vordefinierten Kulturnamen auf Windows-Systemen finden Sie in der Spalte Language-Tag in der Liste der von Windows unterstützten Sprach-/Regionsnamen. Kulturnamen befolgen den von BCP 47 definierten Standard. Darüber hinaus kann ab Windows 10 name ein beliebiges gültiges BCP-47-Sprachtag sein.

Wenn name dies der Fall istString.Empty, erstellt der Konstruktor eine instance der invarianten Kultur. Dies entspricht dem Abrufen des Werts der InvariantCulture -Eigenschaft.

Der Benutzer kann einige der Werte, die der aktuellen Windows-Kultur zugeordnet sind, über den Teil der Regional- und Sprachoptionen von Systemsteuerung außer Kraft setzen. Beispielsweise kann der Benutzer das Datum in einem anderen Format anzeigen oder eine andere Währung als die Standardwährung für die Kultur verwenden. Wenn der zugeordnete name Kulturbezeichner mit dem Kulturbezeichner der aktuellen Windows-Kultur übereinstimmt, erstellt dieser Konstruktor ein CultureInfo Objekt, das diese Außerkraftsetzungen verwendet, einschließlich Benutzereinstellungen für die Eigenschaften des von der DateTimeFormatDateTimeFormatInfo -Eigenschaft zurückgegebenen instance und die Eigenschaften des von der NumberFormatInfoNumberFormat -Eigenschaft zurückgegebenen instance. Wenn die Benutzereinstellungen mit der kultur nicht kompatibel sind, die CultureInfodem zugeordnet ist, z. B. wenn der ausgewählte Kalender nicht einer der OptionalCalendarsist, sind die Ergebnisse der Methoden und die Werte der Eigenschaften nicht definiert.

Wenn der zugeordnete name Kulturbezeichner nicht mit dem Kulturbezeichner der aktuellen Windows-Kultur übereinstimmt, erstellt dieser Konstruktor ein CultureInfo Objekt, das die Standardwerte für die angegebene Kultur verwendet.

Die UseUserOverride -Eigenschaftensatz ist immer auf true.

Angenommen, Arabisch (Saudi-Arabien) ist die aktuelle Kultur von Windows und der Benutzer hat den Kalender von Hijri in Gregorianisch geändert:

Die LCID Eigenschaft des neuen CultureInfo wird auf den Kulturbezeichner festgelegt, der dem angegebenen Namen zugeordnet ist.

Hinweise für Aufrufer

.NET Framework 3.5 und früheren Versionen lösen einen ausArgumentException, wenn name kein gültiger Kulturname ist. Ab .NET Framework 4 löst dieser Konstruktor einen ausCultureNotFoundException. Beginnend mit Apps, die unter .NET Framework 4 oder höher unter Windows 7 oder höher ausgeführt werden, versucht die Methode, ein CultureInfo Objekt abzurufen, dessen Bezeichner vom Betriebssystem stammtname. Wenn das Betriebssystem diese Kultur nicht unterstützt, und wenn name es sich nicht um den Namen einer zusätzlichen Kultur oder einer Ersatzkultur handelt, löst die Methode eine Ausnahme ausCultureNotFoundException.

In .NET 6 und höheren Versionen wird ein CultureNotFoundException ausgelöst, wenn die App in einer Umgebung ausgeführt wird, in der der globalisierungsinvariante Modus aktiviert ist, z. B. einige Docker-Container, und eine andere Kultur als die invariante Kultur angegeben wird.

Weitere Informationen

Gilt für:

CultureInfo(Int32, Boolean)

Source:
CultureInfo.cs
Source:
CultureInfo.cs
Source:
CultureInfo.cs

Initialisiert eine neue instance der CultureInfo -Klasse basierend auf der Kultur, die durch den Kulturbezeichner und einen Wert angegeben wird, der angibt, ob die vom Benutzer ausgewählten Kultureinstellungen von Windows verwendet werden sollen.

public:
 CultureInfo(int culture, bool useUserOverride);
public CultureInfo (int culture, bool useUserOverride);
new System.Globalization.CultureInfo : int * bool -> System.Globalization.CultureInfo
Public Sub New (culture As Integer, useUserOverride As Boolean)

Parameter

culture
Int32

Ein vordefinierter CultureInfo-Bezeichner, die LCID-Eigenschaft eines vorhandenen CultureInfo-Objekts oder ein Nur-Windows-Kulturbezeichner.

useUserOverride
Boolean

true , um die vom Benutzer ausgewählten Kultureinstellungen zu verwenden (nur Windows); false , um die Standardkultureinstellungen zu verwenden.

Ausnahmen

culture ist kleiner als Null.

culture ist kein gültiger Kulturbezeichner. Weitere Informationen finden Sie im Abschnitt „Hinweise zu Aufrufern“.

Hinweise

Vordefinierte Kulturbezeichner, die auf Windows-Systemen verfügbar sind, werden in der Spalte Language-Tag in der Liste der von Windows unterstützten Sprach-/Regionsnamen aufgeführt. Kulturnamen befolgen den von BCP 47 definierten Standard.

In den meisten Fällen wird der culture Parameter dem entsprechenden NLS-Gebietsschemabezeichner (National Language Support) zugeordnet. Der Wert des culture Parameters wird zum Wert der LCID -Eigenschaft des neuen CultureInfo.

Es wird empfohlen, den Gebietsschemanamenkonstruktor CultureInfo.CultureInfoaufzurufen, da Gebietsschemanamen LCIDs vorzuziehen sind. Für benutzerdefinierte Gebietsschemas ist ein Gebietsschemaname erforderlich.

Der Benutzer kann einige der Werte, die der aktuellen Windows-Kultur zugeordnet sind, über den Teil der Regional- und Sprachoptionen von Systemsteuerung außer Kraft setzen. Beispielsweise kann der Benutzer das Datum in einem anderen Format anzeigen oder eine andere Währung als die Standardwährung für die Kultur verwenden.

Anwendungen sollten Benutzerüberschreibungen in der Regel nicht zulassen. Das Deaktivieren von Außerkraftsetzungen garantiert selbst keine Datenstabilität. Weitere Informationen finden Sie im Blogeintrag Kulturdaten sollten nicht als stabil betrachtet werden (mit Ausnahme von Invariant).

Wenn die UseUserOverride -Eigenschaft auf true festgelegt ist und der angegebene Kulturbezeichner mit dem Bezeichner der aktuellen Windows-Kultur übereinstimmt, erstellt dieser Konstruktor eineCultureInfo, die diese Außerkraftsetzungen verwendet, einschließlich Benutzereinstellungen für die Eigenschaften der von der DateTimeFormatInfoDateTimeFormat -Eigenschaft zurückgegebenen instance und die Eigenschaften der von der NumberFormatInfoNumberFormat -Eigenschaft zurückgegebenen instance. Wenn die Benutzereinstellungen mit der kultur nicht kompatibel sind, die CultureInfodem zugeordnet ist, z. B. wenn der ausgewählte Kalender nicht einer der OptionalCalendarsist, sind die Ergebnisse der Methoden und die Werte der Eigenschaften nicht definiert.

Andernfalls erstellt dieser Konstruktor einen CultureInfo , der die Standardwerte für die angegebene Kultur verwendet.

Der Wert des useUserOverride Parameters wird zum Wert der UseUserOverride -Eigenschaft.

Angenommen, Arabisch (Saudi-Arabien) ist die aktuelle Kultur von Windows und der Benutzer hat den Kalender von Hijri in Gregorianisch geändert.

Für Kulturen, die den Euro verwenden, legen die .NET Framework und Windows XP die Standardwährung auf Euro fest. Ältere Versionen von Windows tun dies jedoch nicht. Wenn der Benutzer einer älteren Version von Windows die Währungseinstellung nicht über den Teil der Regional- und Sprachoptionen von Systemsteuerung geändert hat, ist die Währung möglicherweise falsch. Um die .NET Framework Standardeinstellung für die Währung zu verwenden, sollte die Anwendung den useUserOverride Parameter auf falsefestlegen.

Hinweis

Für Abwärtskompatibilität einer Kultur mithilfe einer culture Parameter 0 x 0004 oder 0x7c04 besitzen, wird eine Name Eigenschaft Zh-CHS oder Zh-CHT bzw. Stattdessen sollten Sie die Kultur lieber mit den aktuellen Standardkulturnamen von zh-Hans oder zh-Hant erstellen, es sei denn, Sie haben einen Grund für die Verwendung der älteren Namen.

Hinweise für Aufrufer

.NET Framework 3.5 und früheren Versionen lösen einen ausArgumentException, wenn culture kein gültiger Kulturbezeichner ist. Ab .NET Framework 4 löst dieser Konstruktor einen ausCultureNotFoundException. Beginnend mit Apps, die unter .NET Framework 4 oder höher unter Windows 7 oder höher ausgeführt werden, versucht die Methode, ein CultureInfo Objekt abzurufen, dessen Bezeichner aus dem Betriebssystem stammtculture. Wenn das Betriebssystem diese Kultur nicht unterstützt, löst die Methode eine Ausnahme ausCultureNotFoundException.

In .NET 6 und höheren Versionen wird ein CultureNotFoundException ausgelöst, wenn die App in einer Umgebung ausgeführt wird, in der der globalisierungsinvariante Modus aktiviert ist, z. B. einige Docker-Container, und eine andere Kultur als die invariante Kultur angegeben wird.

Weitere Informationen

Gilt für:

CultureInfo(String, Boolean)

Source:
CultureInfo.cs
Source:
CultureInfo.cs
Source:
CultureInfo.cs

Initialisiert eine neue instance der -Klasse basierend auf der CultureInfo kultur, die durch den Namen und einen Wert angegeben wird, der angibt, ob die vom Benutzer ausgewählten Kultureinstellungen von Windows verwendet werden sollen.

public:
 CultureInfo(System::String ^ name, bool useUserOverride);
public CultureInfo (string name, bool useUserOverride);
new System.Globalization.CultureInfo : string * bool -> System.Globalization.CultureInfo
Public Sub New (name As String, useUserOverride As Boolean)

Parameter

name
String

Ein vordefinierter CultureInfo-Name, eine Name-Eigenschaft einer vorhandenen CultureInfo-Klasse oder ein nur für Windows definierter Kulturname. Bei name wird nicht zwischen Groß- und Kleinschreibung unterschieden.

useUserOverride
Boolean

true , um die vom Benutzer ausgewählten Kultureinstellungen zu verwenden (nur Windows); false , um die Standardkultureinstellungen zu verwenden.

Ausnahmen

name ist NULL.

name ist kein gültiger Kulturname. Weitere Informationen finden Sie im Abschnitt „Hinweise zu Aufrufern“.

Hinweise

Eine Liste der vordefinierten Kulturnamen finden Sie in der Spalte Language-Tag in der Liste der von Windows unterstützten Sprach-/Regionsnamen. Kulturnamen befolgen den von BCP 47 definierten Standard. Darüber hinaus kann ab Windows 10 name ein beliebiges gültiges BCP-47-Sprachtag sein.

Wenn name dies der Fall istString.Empty, erstellt der Konstruktor eine instance der invarianten Kultur. Dies entspricht dem Abrufen des Werts der InvariantCulture -Eigenschaft.

Der Benutzer kann einige der Werte, die der aktuellen Windows-Kultur zugeordnet sind, über den Teil der Regional- und Sprachoptionen von Systemsteuerung außer Kraft setzen. Beispielsweise kann der Benutzer das Datum in einem anderen Format anzeigen oder eine andere Währung als die Standardwährung für die Kultur verwenden.

Anwendungen sollten Benutzerüberschreibungen in der Regel nicht zulassen. Das Deaktivieren von Außerkraftsetzungen garantiert selbst keine Datenstabilität. Weitere Informationen finden Sie im Blogeintrag Kulturdaten sollten nicht als stabil betrachtet werden (mit Ausnahme von Invariant).

Wenn die UseUserOverride -Eigenschaft auf true festgelegt ist und der dem angegebenen Kulturnamen zugeordnete Kulturbezeichner mit dem Kulturbezeichner der aktuellen Windows-Kultur übereinstimmt, erstellt dieser Konstruktor einenCultureInfo, der diese Außerkraftsetzungen verwendet, einschließlich Benutzereinstellungen für die Eigenschaften der von der DateTimeFormatInfoDateTimeFormat -Eigenschaft zurückgegebenen instance und die Eigenschaften der von der NumberFormatInfoNumberFormat -Eigenschaft zurückgegebenen instance. Wenn die Benutzereinstellungen mit der kultur nicht kompatibel sind, die CultureInfodem zugeordnet ist, z. B. wenn der ausgewählte Kalender nicht einer der OptionalCalendarsist, sind die Ergebnisse der Methoden und die Werte der Eigenschaften nicht definiert.

Andernfalls erstellt dieser Konstruktor einen CultureInfo , der die Standardwerte für die angegebene Kultur verwendet.

Der Wert des useUserOverride Parameters wird zum Wert der UseUserOverride -Eigenschaft.

Angenommen, Arabisch (Saudi-Arabien) ist die aktuelle Kultur von Windows und der Benutzer hat den Kalender von Hijri in Gregorianisch geändert.

Die LCID Eigenschaft des neuen CultureInfo wird auf den Kulturbezeichner festgelegt, der dem angegebenen Namen zugeordnet ist.

Für Kulturen, die den Euro verwenden, legen die .NET Framework und Windows XP die Standardwährung auf Euro fest. Ältere Versionen von Windows tun dies jedoch nicht. Wenn der Benutzer einer älteren Version von Windows die Währungseinstellung nicht über den Teil der Regional- und Sprachoptionen von Systemsteuerung geändert hat, ist die Währung möglicherweise falsch. Um die .NET Framework Standardeinstellung für die Währung zu verwenden, sollte die Anwendung den useUserOverride Parameter auf falsefestlegen.

Hinweise für Aufrufer

.NET Framework 3.5 und früheren Versionen lösen einen ausArgumentException, wenn name kein gültiger Kulturname ist. Ab .NET Framework 4 löst dieser Konstruktor einen ausCultureNotFoundException. Beginnend mit Apps, die unter .NET Framework 4 oder höher unter Windows 7 oder höher ausgeführt werden, versucht die Methode, ein CultureInfo Objekt abzurufen, dessen Bezeichner vom Betriebssystem stammtname. Wenn das Betriebssystem diese Kultur nicht unterstützt, und wenn name es sich nicht um den Namen einer zusätzlichen Kultur oder einer Ersatzkultur handelt, löst die Methode eine Ausnahme ausCultureNotFoundException.

In .NET 6 und höheren Versionen wird ein CultureNotFoundException ausgelöst, wenn die App in einer Umgebung ausgeführt wird, in der der globalisierungsinvariante Modus aktiviert ist, z. B. einige Docker-Container, und eine andere Kultur als die invariante Kultur angegeben wird.

Weitere Informationen

Gilt für: