CultureInfo Costruttori
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
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)
- Origine:
- CultureInfo.cs
- Origine:
- CultureInfo.cs
- Origine:
- 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 del 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.
Con
CultureInfo("0x0401")
(nome impostazioni cultura ar-SA), Calendar è impostato su GregorianCalendar (ovvero l'impostazione dell'utente) ed UseUserOverride è impostato sutrue
.Con
CultureInfo("0x041E")
(nome impostazioni cultura th-TH), Calendar è impostato su ThaiBuddhistCalendar (ovvero il calendario predefinito per th-TH) ed UseUserOverride è impostato sutrue
.
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 del 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)
- Origine:
- CultureInfo.cs
- Origine:
- CultureInfo.cs
- Origine:
- 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 del 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:
- Con
CultureInfo("ar-SA")
, Calendar è impostato su GregorianCalendar (ovvero l'impostazione dell'utente) ed UseUserOverride è impostato sutrue
. - Con
CultureInfo("th-TH")
, Calendar è impostato su ThaiBuddhistCalendar (ovvero il calendario predefinito per th-TH) ed UseUserOverride è impostato sutrue
.
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)
- Origine:
- CultureInfo.cs
- Origine:
- CultureInfo.cs
- Origine:
- 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 del 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.
Con
CultureInfo("0x0401", true)
(nome impostazioni cultura ar-SA), Calendar è impostato su GregorianCalendar (ovvero l'impostazione dell'utente) ed UseUserOverride è impostato sutrue
.Con
CultureInfo("0x0401", false)
(nome delle impostazioni cultura ar-SA), Calendar è impostato su HijriCalendar (che è il calendario predefinito per ar-SA) ed UseUserOverride è impostato sufalse
.Con
CultureInfo("0x041E", true)
(nome impostazioni cultura th-TH), Calendar è impostato su ThaiBuddhistCalendar (ovvero il calendario predefinito per th-TH) ed UseUserOverride è impostato sutrue
.Con
CultureInfo("0x041E", false)
(nome impostazioni cultura th-TH), Calendar è impostato su ThaiBuddhistCalendar (ovvero il calendario predefinito per th-TH) ed UseUserOverride è impostato sufalse
.
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 della valuta tramite la parte delle opzioni internazionali e linguistiche del 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)
- Origine:
- CultureInfo.cs
- Origine:
- CultureInfo.cs
- Origine:
- 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 regionali e linguistiche del 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.
Con
CultureInfo("ar-SA", true)
, Calendar è impostato su GregorianCalendar (ovvero l'impostazione utente) e UseUserOverride è impostato sutrue
.Con
CultureInfo("ar-SA", false)
, Calendar è impostato su HijriCalendar (ovvero il calendario predefinito per ar-SA) ed UseUserOverride è impostato sufalse
.Con
CultureInfo("th-TH", true)
, Calendar è impostato su ThaiBuddhistCalendar (ovvero il calendario predefinito per th-TH) e UseUserOverride è impostato sutrue
.Con
CultureInfo("th-TH", false)
, Calendar è impostato su ThaiBuddhistCalendar (ovvero il calendario predefinito per th-TH) e UseUserOverride è impostato sufalse
.
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 della valuta tramite la parte delle opzioni internazionali e linguistiche del 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.