CultureInfo.CreateSpecificCulture(String) CultureInfo.CreateSpecificCulture(String) CultureInfo.CreateSpecificCulture(String) CultureInfo.CreateSpecificCulture(String) Method

Definizione

Crea un oggetto CultureInfo che rappresenta le impostazioni cultura specifiche associate al nome specificato.Creates a CultureInfo that represents the specific culture that is associated with the specified name.

public:
 static System::Globalization::CultureInfo ^ CreateSpecificCulture(System::String ^ name);
public static System.Globalization.CultureInfo CreateSpecificCulture (string name);
static member CreateSpecificCulture : string -> System.Globalization.CultureInfo
Public Shared Function CreateSpecificCulture (name As String) As CultureInfo

Parametri

name
String String String String

Nome predefinito di CultureInfo o nome di un oggetto CultureInfo esistente.A predefined CultureInfo name or the name of an existing CultureInfo object. Per name non viene effettuata la distinzione tra maiuscole e minuscole.name is not case-sensitive.

Restituisce

Oggetto CultureInfo che rappresenta:A CultureInfo object that represents: Impostazioni cultura invarianti, se name è una stringa vuota ("").The invariant culture, if name is an empty string ("").

In alternativa-or- Impostazioni cultura specifiche associate a name, se name rappresenta impostazioni cultura non associate ad alcun paese.The specific culture associated with name, if name is a neutral culture.

In alternativa-or- Impostazioni cultura specificate da name, se name rappresenta già impostazioni cultura specifiche.The culture specified by name, if name is already a specific culture.

Eccezioni

name non è un nome di impostazioni cultura valido.name is not a valid culture name.

In alternativa-or- Alle impostazioni cultura specificate da name non sono associate impostazioni cultura specifiche.The culture specified by name does not have a specific culture associated with it.

Esempi

Nell'esempio seguente recupera una matrice di CultureInfo gli oggetti che rappresentano impostazioni cultura non associate dal GetCultures (metodo) e le ordina la matrice.The following example retrieves an array of CultureInfo objects that represent neutral cultures from the GetCultures method and sorts the array. Quando scorre gli elementi nella matrice, passa il nome di ogni lingua neutra per la CreateSpecificCulture (metodo) e visualizza il nome delle impostazioni cultura specifici restituito dal metodo.When it iterates the elements in the array, it passes the name of each neutral culture to the CreateSpecificCulture method and displays the name of the specific culture returned by the method.

Nota

L'esempio Usa i nomi delle impostazioni cultura zh-CHT e zh-CHS.The example uses the zh-CHS and zh-CHT culture names. Tuttavia, le applicazioni destinate a Windows Vista e versioni successive utilizzino zh-Hans invece zh-Hant anziché zh-CHT e zh-CHS.However, applications that target Windows Vista and later should use zh-Hans instead of zh-CHS and zh-Hant instead of zh-CHT. zh-Hans e zh-Hant rappresentano lo standard corrente e deve essere utilizzati a meno che non esista un motivo per utilizzare i nomi precedenti.zh-Hans and zh-Hant represent the current standard and should be used unless you have a reason for using the older names.

Si noti anche che i risultati dell'esempio possono differire in un'installazione di Windows Taiwanese, in cui l'input del cinese (tradizionale) alcune impostazioni cultura (zh, zh-CHT e zh-Hant) restituirà zh-TW.Note also that the results of the example may differ on an installation of Taiwanese Windows, where the input of a Chinese (Traditional) neutral culture (zh, zh-CHT, or zh-Hant) will return zh-TW.

using System;
using System.Collections.Generic;
using System.Globalization;
using System.Reflection;

public class Example
{
   public static void Main()
   {
      // Display the header.
      Console.WriteLine("{0,-53}{1}", "CULTURE", "SPECIFIC CULTURE");

      // Get each neutral culture in the .NET Framework.
      CultureInfo[] cultures = CultureInfo.GetCultures(CultureTypes.NeutralCultures);
      // Sort the returned array by name.
      Array.Sort<CultureInfo>(cultures, new NamePropertyComparer<CultureInfo>());
      
      // Determine the specific culture associated with each neutral culture.
      foreach (var culture in cultures) 
      {
         Console.Write("{0,-12} {1,-40}", culture.Name, culture.EnglishName);
         try {
            Console.WriteLine("{0}", CultureInfo.CreateSpecificCulture(culture.Name).Name);
         }   
         catch (ArgumentException) {
            Console.WriteLine("(no associated specific culture)");
         }
      } 
   }
}

public class NamePropertyComparer<T> : IComparer<T>
{
   public int Compare(T x, T y) 
   {
      if (x == null)
         if (y == null)
            return 0;
         else
            return -1;

      PropertyInfo pX = x.GetType().GetProperty("Name");
      PropertyInfo pY = y.GetType().GetProperty("Name");             
      return String.Compare((string) pX.GetValue(x, null), (string) pY.GetValue(y, null));
   }
}
// The example displays the following output:
//    CULTURE                                              SPECIFIC CULTURE
//                 Invariant Language (Invariant Country)  
//    af           Afrikaans                               af-ZA
//    am           Amharic                                 am-ET
//    ar           Arabic                                  ar-SA
//    arn          Mapudungun                              arn-CL
//    as           Assamese                                as-IN
//    az           Azerbaijani                             az-Latn-AZ
//    az-Cyrl      Azerbaijani (Cyrillic)                  az-Cyrl-AZ
//    az-Latn      Azerbaijani (Latin)                     az-Latn-AZ
//    ba           Bashkir                                 ba-RU
//    be           Belarusian                              be-BY
//    bg           Bulgarian                               bg-BG
//    bn           Bengali                                 bn-IN
//    bo           Tibetan                                 bo-CN
//    br           Breton                                  br-FR
//    bs           Bosnian                                 bs-Latn-BA
//    bs-Cyrl      Bosnian (Cyrillic)                      bs-Cyrl-BA
//    bs-Latn      Bosnian (Latin)                         bs-Latn-BA
//    ca           Catalan                                 ca-ES
//    co           Corsican                                co-FR
//    cs           Czech                                   cs-CZ
//    cy           Welsh                                   cy-GB
//    da           Danish                                  da-DK
//    de           German                                  de-DE
//    dsb          Lower Sorbian                           dsb-DE
//    dv           Divehi                                  dv-MV
//    ...
//    ta           Tamil                                   ta-IN
//    te           Telugu                                  te-IN
//    tg           Tajik                                   tg-Cyrl-TJ
//    tg-Cyrl      Tajik (Cyrillic)                        tg-Cyrl-TJ
//    th           Thai                                    th-TH
//    tk           Turkmen                                 tk-TM
//    tn           Setswana                                tn-ZA
//    tr           Turkish                                 tr-TR
//    tt           Tatar                                   tt-RU
//    tzm          Tamazight                               tzm-Latn-DZ
//    tzm-Latn     Tamazight (Latin)                       tzm-Latn-DZ
//    ug           Uyghur                                  ug-CN
//    uk           Ukrainian                               uk-UA
//    ur           Urdu                                    ur-PK
//    uz           Uzbek                                   uz-Latn-UZ
//    uz-Cyrl      Uzbek (Cyrillic)                        uz-Cyrl-UZ
//    uz-Latn      Uzbek (Latin)                           uz-Latn-UZ
//    vi           Vietnamese                              vi-VN
//    wo           Wolof                                   wo-SN
//    xh           isiXhosa                                xh-ZA
//    yo           Yoruba                                  yo-NG
//    zh           Chinese                                 zh-CN
//    zh-CHS       Chinese (Simplified) Legacy             zh-CN
//    zh-CHT       Chinese (Traditional) Legacy            zh-HK
//    zh-Hans      Chinese (Simplified)                    zh-CN
//    zh-Hant      Chinese (Traditional)                   zh-HK
//    zu           isiZulu                                 zu-ZA
Imports System.Collections.Generic
Imports System.Globalization
Imports System.Reflection

Public Class Example
   Public Shared Sub Main()
      ' Display the header.
      Console.WriteLine("{0,-53}{1}", "CULTURE", "SPECIFIC CULTURE")

      ' Get each neutral culture in the .NET Framework.
      Dim cultures() As CultureInfo = CultureInfo.GetCultures(CultureTypes.NeutralCultures)
      ' Sort the returned array by name.
      Array.Sort(Of CultureInfo)(cultures, New NamePropertyComparer(Of CultureInfo)())
      
      ' Determine the specific culture associated with each neutral culture.
      For Each culture As CultureInfo In cultures
         Console.Write("{0,-12} {1,-40}", culture.Name, culture.EnglishName)
         Try
            Console.WriteLine("{0}", CultureInfo.CreateSpecificCulture(culture.Name).Name)
         Catch e As ArgumentException
            Console.WriteLine("(no associated specific culture)")
         End Try
      Next 
   End Sub
End Class

Public Class NamePropertyComparer(Of T) : Implements IComparer(Of T)
   Public Function Compare(x As T, y As T) As Integer _
                   Implements IComparer(Of T).Compare
      If x Is Nothing Then
         If y Is Nothing Then
            Return 0
         Else
            Return -1
         End If
      End If 
      Dim pX As PropertyInfo = x.GetType().GetProperty("Name")
      Dim pY As PropertyInfo = y.GetType().GetProperty("Name")             
      Return String.Compare(CStr(pX.GetValue(x, Nothing)), CStr(pY.GetValue(y, Nothing)))
   End Function
End Class
' The example displays the following output.  This output has been cropped for brevity.
'    CULTURE                                              SPECIFIC CULTURE
'                 Invariant Language (Invariant Country)  
'    af           Afrikaans                               af-ZA
'    am           Amharic                                 am-ET
'    ar           Arabic                                  ar-SA
'    arn          Mapudungun                              arn-CL
'    as           Assamese                                as-IN
'    az           Azerbaijani                             az-Latn-AZ
'    az-Cyrl      Azerbaijani (Cyrillic)                  az-Cyrl-AZ
'    az-Latn      Azerbaijani (Latin)                     az-Latn-AZ
'    ba           Bashkir                                 ba-RU
'    be           Belarusian                              be-BY
'    bg           Bulgarian                               bg-BG
'    bn           Bengali                                 bn-IN
'    bo           Tibetan                                 bo-CN
'    br           Breton                                  br-FR
'    bs           Bosnian                                 bs-Latn-BA
'    bs-Cyrl      Bosnian (Cyrillic)                      bs-Cyrl-BA
'    bs-Latn      Bosnian (Latin)                         bs-Latn-BA
'    ca           Catalan                                 ca-ES
'    co           Corsican                                co-FR
'    cs           Czech                                   cs-CZ
'    cy           Welsh                                   cy-GB
'    da           Danish                                  da-DK
'    de           German                                  de-DE
'    dsb          Lower Sorbian                           dsb-DE
'    dv           Divehi                                  dv-MV
'    ...
'    ta           Tamil                                   ta-IN
'    te           Telugu                                  te-IN
'    tg           Tajik                                   tg-Cyrl-TJ
'    tg-Cyrl      Tajik (Cyrillic)                        tg-Cyrl-TJ
'    th           Thai                                    th-TH
'    tk           Turkmen                                 tk-TM
'    tn           Setswana                                tn-ZA
'    tr           Turkish                                 tr-TR
'    tt           Tatar                                   tt-RU
'    tzm          Tamazight                               tzm-Latn-DZ
'    tzm-Latn     Tamazight (Latin)                       tzm-Latn-DZ
'    ug           Uyghur                                  ug-CN
'    uk           Ukrainian                               uk-UA
'    ur           Urdu                                    ur-PK
'    uz           Uzbek                                   uz-Latn-UZ
'    uz-Cyrl      Uzbek (Cyrillic)                        uz-Cyrl-UZ
'    uz-Latn      Uzbek (Latin)                           uz-Latn-UZ
'    vi           Vietnamese                              vi-VN
'    wo           Wolof                                   wo-SN
'    xh           isiXhosa                                xh-ZA
'    yo           Yoruba                                  yo-NG
'    zh           Chinese                                 zh-CN
'    zh-CHS       Chinese (Simplified) Legacy             zh-CN
'    zh-CHT       Chinese (Traditional) Legacy            zh-HK
'    zh-Hans      Chinese (Simplified)                    zh-CN
'    zh-Hant      Chinese (Traditional)                   zh-HK
'    zu           isiZulu                                 zu-ZA

Commenti

Il CreateSpecificCulture metodo esegue il wrapping di una chiamata al CultureInfo(String) costruttore.The CreateSpecificCulture method wraps a call to the CultureInfo(String) constructor.

Nota

Per un elenco di nomi delle impostazioni cultura predefinite, vedere la National Language Support (NLS) API Reference in Go Global Developer Center.For a list of predefined culture names, see the National Language Support (NLS) API Reference at the Go Global Developer Center. Inoltre, a partire da Windows 10, name può essere qualsiasi tag di lingua BCP-47 valido.In addition, starting with Windows 10, name can be any valid BCP-47 language tag.

Le impostazioni cultura vengono raggruppate in tre insiemi: le impostazioni cultura invarianti, le impostazioni cultura neutre e specifiche impostazioni cultura.Cultures are grouped into three sets: the invariant culture, the neutral cultures, and the specific cultures. Per altre informazioni, vedere la descrizione del CultureInfo classe.For more information, see the description of the CultureInfo class.

Se l'identificatore delle impostazioni cultura delle impostazioni cultura specifica restituita da questo metodo corrisponde all'identificatore delle impostazioni cultura della lingua di Windows corrente, questo metodo crea un CultureInfo esegue l'override di oggetto che viene utilizzata la lingua di Windows.If the culture identifier of the specific culture returned by this method matches the culture identifier of the current Windows culture, this method creates a CultureInfo object that uses the Windows culture overrides. Le sostituzioni includono le impostazioni utente per le proprietà del DateTimeFormatInfo oggetto restituito dal DateTimeFormat proprietà e il NumberFormatInfo oggetto restituito dal NumberFormat proprietà.The overrides include user settings for the properties of the DateTimeFormatInfo object returned by the DateTimeFormat property and the NumberFormatInfo object returned by the NumberFormat property. Creare un'istanza di un CultureInfo dell'oggetto che con impostazione predefinita alle impostazioni cultura piuttosto che esegue l'override utente, chiamare il CultureInfo(String, Boolean) costruttore con un valore di false per il useUserOverride argomento.To instantiate a CultureInfo object that with default culture settings rather than user overrides, call the CultureInfo(String, Boolean) constructor with a value of false for the useUserOverride argument.

Sebbene il CreateSpecificCulture nome del metodo include il termine "Specifica", è necessario ricordare che i dati di impostazioni cultura possono cambiare tra versioni, o a causa di impostazioni cultura personalizzate oppure a causa di override dell'utente.Although the CreateSpecificCulture method name includes the term "Specific", remember that culture data can change between versions, or due to custom cultures, or because of user overrides. Usare le impostazioni cultura invarianti o form binario o fisso per il salvataggio dei dati.Use the invariant culture or binary or fixed forms for saving data.

Note per i chiamanti

Il .NET Framework 3.5.NET Framework 3.5 e versioni precedenti generano un' ArgumentException se name non è un nome di impostazioni cultura valido.The .NET Framework 3.5.NET Framework 3.5 and earlier versions throw an ArgumentException if name is not a valid culture name. Inizia con la .NET Framework 4.NET Framework 4, questo metodo genera un CultureNotFoundException.Starting with the .NET Framework 4.NET Framework 4, this method throws a CultureNotFoundException.

Si applica a

Vedi anche