Esporta (0) Stampa
Espandi tutto
Il presente articolo è stato tradotto automaticamente. Passare il puntatore sulle frasi nell'articolo per visualizzare il testo originale. Ulteriori informazioni.
Traduzione
Originale

Classe CultureAndRegionInfoBuilder

Definisce impostazioni cultura personalizzate nuove o basate su impostazioni cultura e paese diverse. È possibile installare le impostazioni cultura personalizzate in un computer e utilizzarle in qualsiasi applicazione in esecuzione. Questa classe non può essere ereditata.

System.Object
  System.Globalization.CultureAndRegionInfoBuilder

Spazio dei nomi:  System.Globalization
Assembly:  sysglobl (in sysglobl.dll)

[ComVisibleAttribute(false)]
public sealed class CultureAndRegionInfoBuilder

Il tipo CultureAndRegionInfoBuilder espone i seguenti membri.

  NomeDescrizione
Metodo pubblicoCultureAndRegionInfoBuilderInizializza una nuova istanza della classe CultureAndRegionInfoBuilder.
In alto

  NomeDescrizione
Proprietà pubblicaAvailableCalendarsOttiene o imposta una matrice di calendari supportati dall'oggetto CultureAndRegionInfoBuilder.
Proprietà pubblicaCompareInfoOttiene o imposta l'oggetto CompareInfo che definisce la modalità di confronto delle stringhe per le impostazioni cultura.
Proprietà pubblicaConsoleFallbackUICultureOttiene o definisce impostazioni cultura dell'interfaccia utente alternative adatte per le applicazioni di console quando le impostazioni cultura predefinite dell'interfaccia utente grafica non sono appropriate.
Proprietà pubblicaCultureEnglishNameOttiene o imposta il nome delle impostazioni cultura in inglese.
Proprietà pubblicaCultureNameOttiene il nome delle impostazioni cultura create.
Proprietà pubblicaCultureNativeNameOttiene o imposta il nome delle impostazioni cultura nel formato e nella lingua impostati per la visualizzazione.
Proprietà pubblicaCultureTypesOttiene il valore di CultureTypes che descrive le impostazioni cultura rappresentate dall'oggetto CultureAndRegionInfoBuilder corrente.
Proprietà pubblicaCurrencyEnglishNameOttiene o imposta il nome in inglese della valuta utilizzata nel paese rappresentato dall'oggetto CultureAndRegionInfoBuilder.
Proprietà pubblicaCurrencyNativeNameOttiene o imposta il nome nativo della valuta utilizzata nel paese rappresentato dall'oggetto CultureAndRegionInfoBuilder corrente.
Proprietà pubblicaGeoIdOttiene o imposta un numero di identificazione univoco per un'area geografica, un paese, una città o una località.
Proprietà pubblicaGregorianDateTimeFormatOttiene o imposta un oggetto DateTimeFormatInfo che definisce il formato di date e ore in base al calendario gregoriano.
Proprietà pubblicaIetfLanguageTagOttiene o imposta un nome di impostazioni cultura formattato in base allo standard RFC 4646 relativo ai tag per l'identificazione delle lingue.
Proprietà pubblicaIsMetricOttiene o imposta un valore che indica se nel paese in questione viene utilizzato il sistema metrico per le misurazioni.
Proprietà pubblicaISOCurrencySymbolOttiene o imposta il simbolo di valuta di tre caratteri ISO 4217 associato al paese.
Proprietà pubblicaIsRightToLeftOttiene o imposta la direzione predominante delle righe di testo nel sistema di scrittura associato all'oggetto CultureAndRegionInfoBuilder corrente.
Proprietà pubblicaKeyboardLayoutIdOttiene o imposta l'ID delle impostazioni locali di input attivo.
Proprietà pubblicaLCIDOttiene l'identificatore di impostazioni cultura per l'oggetto CultureAndRegionInfoBuilder corrente.
Proprietà pubblicaNumberFormatOttiene o imposta un oggetto NumberFormatInfo che definisce il formato per la visualizzazione di numeri, valute e percentuali appropriato per la lingua.
Proprietà pubblicaParentOttiene o imposta l'oggetto CultureInfo che rappresenta le impostazioni cultura padre delle impostazioni cultura personalizzate correnti.
Proprietà pubblicaRegionEnglishNameOttiene o imposta il nome completo del paese in lingua inglese.
Proprietà pubblicaRegionNameOttiene il nome del paese per l'oggetto CultureAndRegionInfoBuilder corrente.
Proprietà pubblicaRegionNativeNameOttiene o imposta il nome completo del paese utilizzato dalle persone di queste impostazioni cultura personalizzate.
Proprietà pubblicaTextInfoOttiene o imposta l'oggetto TextInfo che definisce il sistema di scrittura associato alle impostazioni cultura personalizzate.
Proprietà pubblicaThreeLetterISOLanguageNameOttiene o imposta il codice ISO 639-2 di tre lettere per le impostazioni cultura personalizzate.
Proprietà pubblicaThreeLetterISORegionNameOttiene o imposta il codice di tre lettere definito in base allo standard ISO 3166 per il paese.
Proprietà pubblicaThreeLetterWindowsLanguageNameOttiene o imposta il codice di tre lettere per la lingua, in base alla definizione nell'API Windows.
Proprietà pubblicaThreeLetterWindowsRegionNameOttiene o imposta il codice di tre lettere assegnato in Windows al paese rappresentato dalle impostazioni cultura personalizzate correnti.
Proprietà pubblicaTwoLetterISOLanguageNameOttiene o imposta il codice ISO 639-1 di due lettere per la lingua dell'oggetto CultureInfo corrente.
Proprietà pubblicaTwoLetterISORegionNameOttiene o imposta il codice di due lettere definito in base allo standard ISO 3166 per il paese.
In alto

  NomeDescrizione
Metodo pubblicoMembro staticoCreateFromLdmlRicostituisce un oggetto CultureAndRegionInfoBuilder da un file XML specificato contenente una rappresentazione dell'oggetto.
Metodo pubblicoEquals(Object) Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object)
Metodo pubblicoGetHashCode Funge da funzione hash per un particolare tipo. (Ereditato da Object)
Metodo pubblicoGetType Ottiene il Type dell'istanza corrente. (Ereditato da Object)
Metodo pubblicoLoadDataFromCultureInfoImposta le proprietà dell'oggetto CultureAndRegionInfoBuilder corrente in base alle proprietà corrispondenti dell'oggetto CultureInfo specificato.
Metodo pubblicoLoadDataFromRegionInfoImposta le proprietà dell'oggetto CultureAndRegionInfoBuilder corrente in base alle proprietà corrispondenti dell'oggetto RegionInfo specificato.
Metodo pubblicoRegisterRende l'oggetto CultureAndRegionInfoBuilder corrente permanente come impostazioni cultura personalizzate nel computer locale e rende tali impostazioni cultura disponibili nelle applicazioni. Richiede privilegi di amministratore.
Metodo pubblicoSaveScrive una rappresentazione XML dell'oggetto CultureAndRegionInfoBuilder corrente nel file specificato.
Metodo pubblicoToString Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object)
Metodo pubblicoMembro staticoUnregisterElimina impostazioni cultura personalizzate dal computer locale.
In alto

La classe CultureInfo contiene le informazioni specifiche delle impostazioni cultura, quali le convenzioni associate a una lingua, ai relativi dialetti, al paese, al calendario e alla cultura. Questa classe fornisce inoltre istanze specifiche delle impostazioni cultura delle classi DateTimeFormatInfo, NumberFormatInfo, CompareInfo e TextInfo, necessarie per operazioni specifiche delle impostazioni cultura, quali l'utilizzo delle lettere maiuscole e minuscole, la formattazione e l'analisi di date e numeri e il confronto delle stringhe.

Per impostazione predefinita, .NET Framework supporta gli oggetti CultureInfo che rappresentano un insieme predefinito delle impostazioni cultura. Per un elenco delle culture, vedere National Language Support (NLS) API Reference nel Developer Center sulla globalizzazione delle applicazioni. La classe CultureAndRegionInfoBuilder consente di creare impostazioni cultura personalizzate che sono completamente nuove o che eseguono l'override delle impostazioni cultura predefinite. Quando le impostazioni cultura personalizzate sono installate e registrate in un computer specifico, diventano indistinguibili dagli oggetti predefiniti CultureInfo e possono essere istanziate ed utilizzate come tali oggetti.

Una cultura personalizzata può essere registrata su di un computer solo da un utente con diritti amministrativi su quel computer. Di conseguenza, le applicazioni in genere non creano e si installano le impostazioni cultura personalizzate. In alternativa, è possibile utilizzare la classe CultureAndRegionInfoBuilder per creare uno strumento per scopi specifici che un amministratore può utilizzare per creare, installare e registrare le impostazioni cultura personalizzate. Una volta registrate in un computer le impostazioni cultura personalizzate, è possibile utilizzare la classe CultureInfo nella propria applicazione per creare un'istanza di tali impostazioni cultura, come nel caso di impostazioni cultura predefinite.

Se si analizzano stringhe di data e ora generate per un'impostazione cultura personalizzata, utilizzare il metodo DateTime.ParseExact o DateTime.TryParseExact anziché il metodo DateTime.Parse o DateTime.TryParse per incrementare le probabilità di esito positivo dell'operazione di analisi. Una stringa di data e ora per un'impostazione cultura personalizzata può essere complessa e pertanto difficile da analizzare. I metodi Parse e TryParse tentano di analizzare una stringa con più criteri di analisi impliciti, ognuno dei quali potrebbe avere esito negativo. Il metodo TryParseExact, invece, richiede di impostare in modo esplicito uno o più criteri di analisi specifici che probabilmente avranno esito positivo.

Definire e creare impostazioni cultura personalizzate

Utilizzare la classe CultureAndRegionInfoBuilder per definire e denominare le impostazioni cultura personalizzate. Le impostazioni cultura possono essere completamente nuove, nuove basate su quelle esistenti (cultura supplementare), o delle impostazioni cultura che sostituiscono quelle esistenti in .NET Framework. In ogni caso, i passaggi fondamentali sono uguali:

  1. Creare un'istanza di un oggetto CultureAndRegionInfoBuilder chiamando il costruttore CultureAndRegionInfoBuilder(String, CultureAndRegionModifiers). Per sostituire le impostazioni cultura esistenti, passare il nome delle impostazioni cultura e il valore di enumerazione CultureAndRegionModifiers.Replacement al costruttore. Per creare nuove impostazioni cultura o le impostazioni cultura aggiuntive, passare un nome di impostazioni cultura univoco e CultureAndRegionModifiers.Neutral o valore di enumerazione CultureAndRegionModifiers.None.

    NotaNota

    Se si utilizza il valore di enumerazione CultureAndRegionModifiers.Replacement per creare un'istanza di un oggetto CultureAndRegionInfoBuilder, le proprietà dell'oggetto CultureAndRegionInfoBuilder vengono inserite automaticamente con i valori dell'oggetto CultureInfo da sostituire.

  2. Se si crea un'impostazione cultura nuova o aggiuntiva:

    • Popola le proprietà dell'oggetto CultureAndRegionInfoBuilder chiamando il metodo LoadDataFromCultureInfo e passando un oggetto CultureInfo i cui valori di proprietà sono simili al nuovo oggetto.

    • Popola le proprietà internazionali dell'oggetto CultureAndRegionInfoBuilder chiamando il metodo LoadDataFromRegionInfo e passando un oggetto RegionInfo che rappresenta l'area delle impostazioni cultura personalizzate.

  3. Modificare le proprietà dell'oggetto CultureAndRegionInfoBuilder in base alle necessità.

  4. Se si intende registrare le impostazioni cultura personalizzate in una routine separata, chiamare il metodo Save. Viene generato un file XML che è possibile caricare e registrare in una routine separata dell'installazione delle impostazioni cultura personalizzate.

Registrare impostazioni cultura personalizzate

Se si sviluppa un'applicazione di registrazione di impostazioni cultura personalizzate che sono separate dall'applicazione che crea le impostazioni cultura, chiamare il metodo CreateFromLdml per caricare il file XML che contiene la definizione delle impostazioni cultura personalizzate e creare un'istanza dell'oggetto CultureAndRegionInfoBuilder. Per gestire la registrazione, chiamare il metodo Register. Per fare in modo che la registrazione abbia esito positivo, l'applicazione che registra le impostazioni cultura personalizzate deve essere in esecuzione con privilegi di amministratore del sistema di destinazione; in caso contrario, la chiamata a Register genera un'eccezione UnauthorizedAccessException.

Nota di avvisoAttenzione

I dati delle impostazioni cultura possono presentare differenze tra i sistemi. Se si utilizza la classe CultureAndRegionInfoBuilder per creare impostazioni cultura personalizzate che sono uniformi tra più sistemi e si stanno creando le impostazioni cultura personalizzate mediante il caricamento dei dati da CultureInfo esistente e dagli oggetti RegionInfo e personalizzandolo, è necessario sviluppare due utilità diverse. La prima crea le impostazioni cultura personalizzate e le salva in un file XML. La seconda utilizza il metodo CreateFromLdml per caricare le impostazioni cultura personalizzate da un file XML e per registrarlo nel computer di destinazione.

Il processo di registrazione compie le seguenti attività:

  • Crea un file .nlp contenente le informazioni definite nell'oggetto CultureAndRegionInfoBuilder.

  • Archivia il file .nlp nella directory di sistema %windir%\Globalization sul computer di destinazione. Ciò consente alle impostazioni cultura personalizzate di essere persistenti tra le sessioni. (Il metodo CultureAndRegionInfoBuilder richiede privilegi di amministratore perché il file di .nlp è memorizzato in una directory di sistema.)

  • Prepara .NET Framework a ricercare nella directory di sistema %windir%\Globalization anziché in una cache interna alla successiva richiesta di creazione delle nuove impostazioni cultura personalizzate.

Quando le impostazioni cultura personalizzate vengono registrate correttamente, sono indistinguibili dalle impostazioni cultura che sono già definite da .NET Framework. Le impostazioni cultura personalizzate sono disponibili finché una chiamata al metodo CultureAndRegionInfoBuilder non elimina il file di .nlp dal computer locale.

Istanziare impostazioni cultura personalizzate

È possibile creare un'istanza di impostazioni cultura personalizzate in uno dei modi seguenti:

Inoltre, la matrice di oggetti CultureInfo restituita dal metodo CultureInfo.GetCultures include le impostazioni cultura personalizzate.

Nell'esempio seguente vengono definite le impostazioni cultura personalizzate ru-US che rappresentano la lingua russa negli Stati Uniti. L'esempio definisce le impostazioni cultura personalizzate mediante il caricamento delle impostazioni dall'oggetto russo (Russia) CultureInfo e dall'oggetto U.S. RegionInfo, quindi imposta un numero di diverse proprietà CultureAndRegionInfoBuilder. L'esempio registra le impostazioni cultura personalizzate e quindi ne crea un'istanza e la rende le impostazioni cultura del thread corrente.


using System;
using System.Globalization;
using System.Threading;

public class Example
{
   public static void Main()
   {
      // Create a custom culture for ru-US.
      CultureAndRegionInfoBuilder car1 = new CultureAndRegionInfoBuilder("ru-US", 
                                             CultureAndRegionModifiers.None);
      car1.LoadDataFromCultureInfo(CultureInfo.CreateSpecificCulture("ru-RU"));
      car1.LoadDataFromRegionInfo(new RegionInfo("en-US"));

      car1.CultureEnglishName = "Russian (United States)";
      car1.CultureNativeName = "русский (США)";
      car1.CurrencyNativeName = "Доллар (США)";
      car1.RegionNativeName = "США";

      // Register the culture.
      try {
         car1.Register();
      }    
      catch (InvalidOperationException) {
         // Swallow the exception: the culture already is registered.
      }

      // Use the custom culture.
      CultureInfo ci = CultureInfo.CreateSpecificCulture("ru-US");
      Thread.CurrentThread.CurrentCulture = ci;
      Console.WriteLine("Current Culture: {0}", 
                        Thread.CurrentThread.CurrentCulture.Name);
      Console.WriteLine("Writing System: {0}", 
                        Thread.CurrentThread.CurrentCulture.TextInfo);
   }
}
// The example displays the following output:
//     Current Culture: ru-US
//     Writing System: TextInfo - ru-US


.NET Framework

Supportato in: 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0

.NET Framework Client Profile

Supportato in: 4, 3.5 SP1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (ruoli di base del server non supportati), Windows Server 2008 R2 (ruoli di base del server supportati con SP1 o versione successiva, Itanium non supportato)

.NET Framework non supporta tutte le versioni di ciascuna piattaforma. Per un elenco delle versioni supportate, vedere Requisiti di sistema di .NET Framework.

Qualsiasi membro static (Shared in Visual Basic) pubblico di questo tipo è thread-safe. I membri di istanza non sono garantiti come thread-safe.

Aggiunte alla community

AGGIUNGI
Mostra:
© 2015 Microsoft