CultureInfo Costruttori

Definizione

Inizializza una nuova istanza della classe CultureInfo.

Overload

CultureInfo(Int32)

Inizializza una nuova istanza della classe CultureInfo in base alle impostazioni cultura specificate dall'identificatore delle impostazioni cultura.

CultureInfo(String)

Inizializza una nuova istanza della classe CultureInfo in base alle impostazioni cultura specificate per nome.

CultureInfo(Int32, Boolean)

Inizializza una nuova istanza della CultureInfo classe in base alle impostazioni cultura specificate dall'identificatore delle impostazioni cultura e a un valore che specifica se utilizzare le impostazioni cultura selezionate dall'utente da Windows.

CultureInfo(String, Boolean)

Inizializza una nuova istanza della CultureInfo classe in base alle impostazioni cultura specificate in base al nome e a un valore che specifica se utilizzare le impostazioni cultura selezionate dall'utente da Windows.

CultureInfo(Int32)

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

Inizializza una nuova istanza della classe CultureInfo in base alle impostazioni cultura specificate dall'identificatore delle impostazioni cultura.

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

Parametri

culture
Int32

Identificatore CultureInfo predefinito, proprietà LCID di un oggetto CultureInfo esistente o identificatore di impostazioni cultura solo Windows.

Eccezioni

culture è minore di zero.

culture non è un identificatore di impostazioni cultura valido. Per altre informazioni, vedere la sezione Note per i chiamanti.

Commenti

Gli identificatori delle impostazioni cultura predefiniti per le impostazioni cultura disponibili nel sistema Windows sono elencati nella colonna Tag linguanell'elenco dei nomi di lingua/area geografica supportati da Windows. I nomi delle impostazioni cultura seguono lo standard definito da BCP 47.

Nella maggior parte dei casi, il culture parametro viene mappato all'identificatore delle impostazioni locali NLS (National Language Support) corrispondente. Il valore del culture parametro diventa il valore della LCID proprietà del nuovo CultureInfooggetto .

È consigliabile chiamare il costruttore CultureInfo.CultureInfodel nome delle impostazioni locali , perché i nomi delle impostazioni locali sono preferibili agli LCID. Per le impostazioni locali personalizzate, è necessario un nome delle impostazioni locali.

L'utente potrebbe scegliere di eseguire l'override di alcuni dei valori associati alle impostazioni cultura correnti di Windows tramite la parte delle opzioni internazionali e della lingua di Pannello di controllo. Ad esempio, l'utente potrebbe scegliere di visualizzare la data in un formato diverso o di usare una valuta diversa da quella predefinita per le impostazioni cultura. Se l'identificatore delle impostazioni cultura specificato corrisponde all'identificatore delle impostazioni cultura correnti di Windows, questo costruttore crea un CultureInfo oggetto che usa tali override, incluse le impostazioni utente per le proprietà dell'istanza DateTimeFormatInfo restituita dalla DateTimeFormat proprietà e le proprietà dell'istanza NumberFormatInfo restituita dalla NumberFormat proprietà . Se le impostazioni utente non sono compatibili con le impostazioni cultura associate a CultureInfo ( ad esempio, se il calendario selezionato non è uno dei OptionalCalendars) i risultati dei metodi e i valori delle proprietà non sono definiti.

Se l'identificatore delle impostazioni cultura specificato non corrisponde all'identificatore delle impostazioni cultura di Windows correnti, questo costruttore crea un CultureInfo oggetto che usa i valori predefiniti per le impostazioni cultura specificate.

La UseUserOverride proprietà è sempre impostata su true.

Si supponga, ad esempio, che l'arabo (Arabia Saudita) sia le impostazioni cultura correnti di Windows e che l'utente abbia modificato il calendario da Hijri a Gregoriano.

Per le impostazioni cultura che usano l'euro, .NET Framework e Windows XP impostano la valuta predefinita come euro. Tuttavia, le versioni precedenti di Windows non lo fanno. Pertanto, se l'utente di una versione precedente di Windows non ha modificato l'impostazione di valuta tramite la parte delle opzioni internazionali e della lingua di Pannello di controllo, la valuta potrebbe non essere corretta. Per usare l'impostazione predefinita di .NET Framework per la valuta, l'applicazione deve usare un CultureInfo overload del costruttore che accetta un useUserOverride parametro e impostarlo su false.

Nota

Per la compatibilità con le versioni precedenti, le impostazioni cultura create usando un culture parametro di 0x0004 o 0x7c04 avranno rispettivamente una Name proprietà di zh-CHS o zh-CHT. È invece preferibile costruire le impostazioni cultura usando i nomi delle impostazioni cultura standard correnti di zh-Hans o zh-Hant, a meno che non si abbia un motivo per usare i nomi precedenti.

Note per i chiamanti

.NET Framework 3.5 e versioni precedenti generano un'eccezione ArgumentException se culture non è un identificatore di impostazioni cultura valido. A partire da .NET Framework 4, questo costruttore genera un'eccezione CultureNotFoundException. A partire dalle app eseguite in .NET Framework 4 o versione successiva in Windows 7 o versione successiva, il metodo tenta di recuperare un CultureInfo oggetto il cui identificatore proviene culture dal sistema operativo. Se il sistema operativo non supporta tale impostazioni cultura, il metodo genera un'eccezione CultureNotFoundException .

In .NET 6 e versioni successive viene generata un'eccezione CultureNotFoundException se l'app è in esecuzione in un ambiente in cui è abilitata la modalità invariante di globalizzazione, ad esempio alcuni contenitori Docker e viene specificata una cultura diversa dalle impostazioni cultura invarianti.

Vedi anche

Si applica a

CultureInfo(String)

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

Inizializza una nuova istanza della classe CultureInfo in base alle impostazioni cultura specificate per nome.

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

Parametri

name
String

Nome CultureInfo predefinito, proprietà Name di un oggetto CultureInfo esistente o nome di impostazioni cultura solo Windows. Per name non viene effettuata la distinzione tra maiuscole e minuscole.

Eccezioni

name è null.

name non è un nome di impostazioni cultura valido. Per altre informazioni, vedere la sezione Note per i chiamanti.

Esempio

Nell'esempio seguente vengono recuperate le impostazioni cultura correnti. Se è diverso dalle impostazioni cultura francese (Francia), chiama il CultureInfo(String) costruttore per creare un'istanza di un CultureInfo oggetto che rappresenta le impostazioni cultura francese (Francia) e lo rende le impostazioni cultura correnti. In caso contrario, crea un'istanza di un CultureInfo oggetto che rappresenta le impostazioni cultura francesi (Lussemburgo) e lo rende le impostazioni cultura correnti.

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

Commenti

Per un elenco dei nomi delle impostazioni cultura predefiniti nei sistemi Windows, vedere la colonna Tag linguanell'elenco dei nomi di lingua/area geografica supportati da Windows. I nomi delle impostazioni cultura seguono lo standard definito da BCP 47. Inoltre, a partire da Windows 10, name può essere qualsiasi tag di lingua BCP-47 valido.

Se name è String.Empty, il costruttore crea un'istanza delle impostazioni cultura invarianti. Equivale a recuperare il valore della InvariantCulture proprietà.

L'utente potrebbe scegliere di eseguire l'override di alcuni dei valori associati alle impostazioni cultura correnti di Windows tramite la parte delle opzioni internazionali e della lingua di Pannello di controllo. Ad esempio, l'utente potrebbe scegliere di visualizzare la data in un formato diverso o di usare una valuta diversa da quella predefinita per le impostazioni cultura. Se l'identificatore delle impostazioni cultura associato name a corrisponde all'identificatore delle impostazioni cultura correnti di Windows, questo costruttore crea un CultureInfo oggetto che utilizza tali override, incluse le impostazioni utente per le proprietà dell'istanza DateTimeFormatInfo restituita dalla DateTimeFormat proprietà e le proprietà dell'istanza NumberFormatInfo restituita dalla NumberFormat proprietà . Se le impostazioni utente non sono compatibili con le impostazioni cultura associate a CultureInfo, ad esempio, se il calendario selezionato non è uno di OptionalCalendars, i risultati dei metodi e i valori delle proprietà non sono definiti.

Se l'identificatore delle impostazioni cultura associato name a non corrisponde all'identificatore delle impostazioni cultura correnti di Windows, questo costruttore crea un CultureInfo oggetto che usa i valori predefiniti per le impostazioni cultura specificate.

La UseUserOverride proprietà è sempre impostata su true.

Si supponga, ad esempio, che l'arabo (Arabia Saudita) sia le impostazioni cultura correnti di Windows e che l'utente abbia modificato il calendario da Hijri a Gregoriano:

La LCID proprietà del nuovo CultureInfo viene impostata sull'identificatore delle impostazioni cultura associato al nome specificato.

Note per i chiamanti

.NET Framework 3.5 e versioni precedenti generano un'eccezione ArgumentException se name non è un nome di impostazioni cultura valido. A partire da .NET Framework 4, questo costruttore genera un'eccezione CultureNotFoundException. A partire dalle app eseguite in .NET Framework 4 o versione successiva in Windows 7 o versione successiva, il metodo tenta di recuperare un CultureInfo oggetto il cui identificatore proviene name dal sistema operativo; se il sistema operativo non supporta tali impostazioni cultura e se name non è il nome di impostazioni cultura supplementari o sostitutive, il metodo genera un'eccezione CultureNotFoundException .

In .NET 6 e versioni successive viene generata un'eccezione CultureNotFoundException se l'app è in esecuzione in un ambiente in cui è abilitata la modalità invariante di globalizzazione, ad esempio alcuni contenitori Docker e viene specificata una cultura diversa dalle impostazioni cultura invarianti.

Vedi anche

Si applica a

CultureInfo(Int32, Boolean)

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

Inizializza una nuova istanza della CultureInfo classe in base alle impostazioni cultura specificate dall'identificatore delle impostazioni cultura e su un valore che specifica se usare le impostazioni cultura selezionate dall'utente da Windows.

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)

Parametri

culture
Int32

Identificatore CultureInfo predefinito, proprietà LCID di un oggetto CultureInfo esistente o identificatore di impostazioni cultura solo Windows.

useUserOverride
Boolean

true per usare le impostazioni cultura selezionate dall'utente (solo Windows); false per usare le impostazioni cultura predefinite.

Eccezioni

culture è minore di zero.

culture non è un identificatore di impostazioni cultura valido. Per altre informazioni, vedere la sezione Note per i chiamanti.

Commenti

Gli identificatori delle impostazioni cultura predefiniti disponibili nei sistemi Windows sono elencati nella colonna Tag linguanell'elenco dei nomi di lingua/area geografica supportati da Windows. I nomi delle impostazioni cultura seguono lo standard definito da BCP 47.

Nella maggior parte dei casi, il culture parametro viene mappato all'identificatore delle impostazioni locali NLS (National Language Support) corrispondente. Il valore del culture parametro diventa il valore della LCID proprietà del nuovo CultureInfooggetto .

È consigliabile chiamare il costruttore CultureInfo.CultureInfodel nome delle impostazioni locali , perché i nomi delle impostazioni locali sono preferibili agli LCID. Per le impostazioni locali personalizzate, è necessario un nome delle impostazioni locali.

L'utente potrebbe scegliere di eseguire l'override di alcuni dei valori associati alle impostazioni cultura correnti di Windows tramite la parte delle opzioni internazionali e della lingua di Pannello di controllo. Ad esempio, l'utente potrebbe scegliere di visualizzare la data in un formato diverso o di usare una valuta diversa da quella predefinita per le impostazioni cultura.

Le applicazioni non devono in genere impedire le sostituzioni utente. La disallowing overrides non garantisce la stabilità dei dati. Per altre informazioni, vedere il post di blog Dati cultura non devono essere considerati stabili (ad eccezione di Invariant).

Se la UseUserOverride proprietà è impostata su true e l'identificatore delle impostazioni cultura specificato corrisponde all'identificatore delle impostazioni cultura di Windows correnti, questo costruttore crea un CultureInfo oggetto che usa tali override, incluse le impostazioni utente per le proprietà dell'istanza DateTimeFormatInfo restituita dalla DateTimeFormat proprietà e le proprietà dell'istanza NumberFormatInfo restituita dalla NumberFormat proprietà . Se le impostazioni utente non sono compatibili con le impostazioni cultura associate a CultureInfo, ad esempio, se il calendario selezionato non è uno di OptionalCalendars, i risultati dei metodi e i valori delle proprietà non sono definiti.

In caso contrario, questo costruttore crea un CultureInfo oggetto che usa i valori predefiniti per le impostazioni cultura specificate.

Il valore del useUserOverride parametro diventa il valore della UseUserOverride proprietà .

Si supponga, ad esempio, che l'arabo (Arabia Saudita) sia le impostazioni cultura correnti di Windows e che l'utente abbia modificato il calendario da Hijri a Gregoriano.

Per le impostazioni cultura che usano l'euro, .NET Framework e Windows XP impostano la valuta predefinita come euro. Tuttavia, le versioni precedenti di Windows non sono. Pertanto, se l'utente di una versione precedente di Windows non ha modificato l'impostazione di valuta tramite la parte delle opzioni internazionali e della lingua di Pannello di controllo, la valuta potrebbe non essere corretta. Per usare l'impostazione predefinita di .NET Framework per la valuta, l'applicazione deve impostare il useUserOverride parametro su false.

Nota

Per la compatibilità con le versioni precedenti, una cultura costruita usando un culture parametro di 0x0004 o 0x7c04 avrà rispettivamente una Name proprietà di zh-CHS o zh-CHT. È invece consigliabile costruire le impostazioni cultura usando i nomi delle impostazioni cultura standard correnti di zh-Hans o zh-Hant, a meno che non si abbia un motivo per usare i nomi meno recenti.

Note per i chiamanti

.NET Framework 3.5 e versioni precedenti generano un'eccezione ArgumentException se culture non è un identificatore di impostazioni cultura valido. A partire da .NET Framework 4, questo costruttore genera un'eccezione CultureNotFoundException. A partire dalle app eseguite in .NET Framework 4 o versione successiva in Windows 7 o versione successiva, il metodo tenta di recuperare un CultureInfo oggetto il cui identificatore proviene culture dal sistema operativo. Se il sistema operativo non supporta tale impostazioni cultura, il metodo genera un'eccezione CultureNotFoundException .

In .NET 6 e versioni successive viene generata un'eccezione CultureNotFoundException se l'app è in esecuzione in un ambiente in cui è abilitata la modalità invariante di globalizzazione, ad esempio alcuni contenitori Docker e viene specificata una cultura diversa dalle impostazioni cultura invarianti.

Vedi anche

Si applica a

CultureInfo(String, Boolean)

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

Inizializza una nuova istanza della CultureInfo classe in base alle impostazioni cultura specificate per nome e su un valore che specifica se usare le impostazioni cultura selezionate dall'utente da Windows.

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)

Parametri

name
String

Nome CultureInfo predefinito, proprietà Name di un oggetto CultureInfo esistente o nome di impostazioni cultura solo Windows. Per name non viene effettuata la distinzione tra maiuscole e minuscole.

useUserOverride
Boolean

true per usare le impostazioni cultura selezionate dall'utente (solo Windows); false per usare le impostazioni cultura predefinite.

Eccezioni

name è null.

name non è un nome di impostazioni cultura valido. Per altre informazioni, vedere la sezione Note per i chiamanti.

Commenti

Per un elenco di nomi cultura predefiniti, vedere la colonna Tag linguanell'elenco dei nomi di lingua/area supportati da Windows. I nomi delle impostazioni cultura seguono lo standard definito da BCP 47. Inoltre, a partire da Windows 10, name può essere qualsiasi tag di lingua BCP-47 valido.

Se name è String.Empty, il costruttore crea un'istanza delle impostazioni cultura invarianti. Equivale a recuperare il valore della InvariantCulture proprietà.

L'utente potrebbe scegliere di eseguire l'override di alcuni dei valori associati alle impostazioni cultura di Windows correnti tramite la parte delle opzioni internazionali e della lingua di Pannello di controllo. Ad esempio, l'utente potrebbe scegliere di visualizzare la data in un formato diverso o di usare una valuta diversa dall'impostazione predefinita per le impostazioni cultura.

Le applicazioni non devono in genere impedire l'override dell'utente. L'override non consentito non garantisce la stabilità dei dati. Per altre informazioni, vedere i dati cultura della voce di blog non devono essere considerati stabili (ad eccezione di Invariant).

Se la UseUserOverride proprietà è impostata su true e l'identificatore delle impostazioni cultura associato al nome delle impostazioni cultura specificato corrisponde all'identificatore delle impostazioni cultura correnti di Windows, questo costruttore crea un CultureInfo oggetto che usa tali overridi, incluse le impostazioni utente per le proprietà dell'istanza restituita dalla proprietà e le proprietà dell'istanza DateTimeFormatInfoNumberFormatInfo restituita dalla DateTimeFormatNumberFormat proprietà . Se le impostazioni utente non sono compatibili con le impostazioni cultura associate a CultureInfo, ad esempio, se il calendario selezionato non è uno dei OptionalCalendars, i risultati dei metodi e i valori delle proprietà non sono definiti.

In caso contrario, questo costruttore crea un oggetto CultureInfo che usa i valori predefiniti per le impostazioni cultura specificate.

Il valore del useUserOverride parametro diventa il valore della UseUserOverride proprietà.

Si supponga, ad esempio, che l'arabo (Arabia Saudita) sia la cultura corrente di Windows e che l'utente abbia modificato il calendario da Hijri a Gregorian.

La LCID proprietà del nuovo CultureInfo è impostata sull'identificatore delle impostazioni cultura associato al nome specificato.

Per le impostazioni cultura che usano l'euro, .NET Framework e Windows XP impostano la valuta predefinita come euro. Tuttavia, le versioni precedenti di Windows non fanno questa operazione. Pertanto, se l'utente di una versione precedente di Windows non ha modificato l'impostazione di valuta tramite la parte delle opzioni internazionali e della lingua di Pannello di controllo, la valuta potrebbe non essere corretta. Per usare l'impostazione predefinita di .NET Framework per la valuta, l'applicazione deve impostare il useUserOverride parametro su false.

Note per i chiamanti

.NET Framework 3.5 e versioni precedenti generano un valore ArgumentException se name non è un nome delle impostazioni cultura valido. A partire da .NET Framework 4, questo costruttore genera un CultureNotFoundExceptionoggetto . A partire dalle app eseguite in .NET Framework 4 o versioni successive in Windows 7 o versioni successive, il metodo tenta di recuperare un CultureInfo oggetto il cui identificatore proviene name dal sistema operativo. Se il sistema operativo non supporta tale cultura e se name non è il nome di impostazioni cultura supplementari o sostitutive, il metodo genera un'eccezione CultureNotFoundException .

In .NET 6 e versioni successive viene generato un CultureNotFoundException valore se l'app è in esecuzione in un ambiente in cui è abilitata la modalità di globalizzazione invariante, ad esempio alcuni contenitori Docker e viene specificata una cultura diversa dalle impostazioni cultura invarianti.

Vedi anche

Si applica a