CultureTypes Enumeração

Definição

Define os tipos de listas de cultura que podem ser recuperados usando o método GetCultures(CultureTypes).

Essa enumeração dá suporte a uma combinação bit a bit dos valores de membro.

public enum class CultureTypes
[System.Flags]
public enum CultureTypes
[System.Flags]
[System.Serializable]
public enum CultureTypes
[System.Flags]
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public enum CultureTypes
[<System.Flags>]
type CultureTypes = 
[<System.Flags>]
[<System.Serializable>]
type CultureTypes = 
[<System.Flags>]
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type CultureTypes = 
Public Enum CultureTypes
Herança
CultureTypes
Atributos

Campos

AllCultures 7

Todas as culturas reconhecidas pelo .NET, incluindo culturas neutras e específicas e culturas personalizadas criadas pelo usuário.

No .NET Framework 4, e em versões posteriores, e no .NET Core em execução no Windows, inclui os dados de cultura disponíveis no sistema operacional Windows. No .NET Core em execução no Linux e macOS, inclui dados de cultura definidos nas bibliotecas de ICU.

AllCultures é um campo de composição que inclui os valores NeutralCultures, SpecificCultures e InstalledWin32Cultures.

FrameworkCultures 64

Esse membro foi preterido. Usar esse valor com GetCultures(CultureTypes) retornará culturas neutras e específicas que acompanham o .NET Framework 2.0.

InstalledWin32Cultures 4

Este membro foi preterido. Todas as culturas instaladas no sistema operacional Windows.

NeutralCultures 1

Culturas associadas a um idioma, mas que não são específicas de um país ou uma região.

ReplacementCultures 16

Este membro foi preterido. Culturas personalizadas criadas pelo usuário que substituem as culturas que acompanham o .NET Framework.

SpecificCultures 2

Culturas específicas de um país ou uma região.

UserCustomCulture 8

Este membro foi preterido. Culturas personalizadas criadas pelo usuário.

WindowsOnlyCultures 32

Esse membro foi preterido e será ignorado.

Exemplos

O exemplo a seguir demonstra o CultureTypes.AllCultures membro de enumeração e a CultureTypes propriedade .

using System;
using System.Globalization;

class Sample
{
    public static void Main()
    {
        // Get and enumerate all cultures.
        var allCultures = CultureInfo.GetCultures(CultureTypes.AllCultures);
        foreach (var ci in allCultures)
        {
            // Display the name of each culture.
            Console.Write($"{ci.EnglishName} ({ci.Name}): ");
            // Indicate the culture type.
            if (ci.CultureTypes.HasFlag(CultureTypes.NeutralCultures))
               Console.Write(" NeutralCulture");
            if (ci.CultureTypes.HasFlag(CultureTypes.SpecificCultures))
               Console.Write(" SpecificCulture");
            Console.WriteLine();
        }
    }
}
/*
The following is a portion of the output from this example.
      Tajik (tg):  NeutralCulture
      Tajik (Cyrillic) (tg-Cyrl):  NeutralCulture
      Tajik (Cyrillic, Tajikistan) (tg-Cyrl-TJ):  SpecificCulture
      Thai (th):  NeutralCulture
      Thai (Thailand) (th-TH):  SpecificCulture
      Tigrinya (ti):  NeutralCulture
      Tigrinya (Eritrea) (ti-ER):  SpecificCulture
      Tigrinya (Ethiopia) (ti-ET):  SpecificCulture
      Tigre (tig):  NeutralCulture
      Tigre (Eritrea) (tig-ER):  SpecificCulture
      Turkmen (tk):  NeutralCulture
      Turkmen (Turkmenistan) (tk-TM):  SpecificCulture
      Setswana (tn):  NeutralCulture
      Setswana (Botswana) (tn-BW):  SpecificCulture
      Setswana (South Africa) (tn-ZA):  SpecificCulture
*/
Imports System.Globalization

Module Module1
    Public Sub Main()
        ' Get and enumerate all cultures.
        Dim allCultures = CultureInfo.GetCultures(CultureTypes.AllCultures)
         For Each ci In allCultures
            ' Display the name of each culture.
            Console.Write($"{ci.EnglishName} ({ci.Name}): ")
            ' Indicate the culture type. 
            If ci.CultureTypes.HasFlag(CultureTypes.NeutralCultures) Then
               Console.Write(" NeutralCulture")
            End If   
            If ci.CultureTypes.HasFlag(CultureTypes.SpecificCultures) Then
               Console.Write(" SpecificCulture")
            End If   
            Console.WriteLine()
        Next
    End Sub  
End Module
' The following is a portion of the output from this example.
'            Tajik (tg):  NeutralCulture
'            Tajik (Cyrillic) (tg-Cyrl):  NeutralCulture
'            Tajik (Cyrillic, Tajikistan) (tg-Cyrl-TJ):  SpecificCulture
'            Thai (th):  NeutralCulture
'            Thai (Thailand) (th-TH):  SpecificCulture
'            Tigrinya (ti):  NeutralCulture
'            Tigrinya (Eritrea) (ti-ER):  SpecificCulture
'            Tigrinya (Ethiopia) (ti-ET):  SpecificCulture
'            Tigre (tig):  NeutralCulture
'            Tigre (Eritrea) (tig-ER):  SpecificCulture
'            Turkmen (tk):  NeutralCulture
'            Turkmen (Turkmenistan) (tk-TM):  SpecificCulture
'            Setswana (tn):  NeutralCulture
'            Setswana (Botswana) (tn-BW):  SpecificCulture
'            Setswana (South Africa) (tn-ZA):  SpecificCulture

O exemplo a seguir exibe várias propriedades das culturas neutras.

using namespace System;
using namespace System::Globalization;
int main()
{
   
   // Displays several properties of the neutral cultures.
   Console::WriteLine( "CULTURE ISO ISO WIN DISPLAYNAME                              ENGLISHNAME" );
   System::Collections::IEnumerator^ enum0 = CultureInfo::GetCultures( CultureTypes::NeutralCultures )->GetEnumerator();
   while ( enum0->MoveNext() )
   {
      CultureInfo^ ci = safe_cast<CultureInfo^>(enum0->Current);
      Console::Write( "{0,-7}", ci->Name );
      Console::Write( " {0,-3}", ci->TwoLetterISOLanguageName );
      Console::Write( " {0,-3}", ci->ThreeLetterISOLanguageName );
      Console::Write( " {0,-3}", ci->ThreeLetterWindowsLanguageName );
      Console::Write( " {0,-40}", ci->DisplayName );
      Console::WriteLine( " {0,-40}", ci->EnglishName );
   }
}

/*
This code produces the following output.  This output has been cropped for brevity.

CULTURE ISO ISO WIN DISPLAYNAME                              ENGLISHNAME
ar      ar  ara ARA Arabic                                   Arabic                                  
bg      bg  bul BGR Bulgarian                                Bulgarian                               
ca      ca  cat CAT Catalan                                  Catalan                                 
zh-Hans zh  zho CHS Chinese (Simplified)                     Chinese (Simplified)                    
cs      cs  ces CSY Czech                                    Czech                                   
da      da  dan DAN Danish                                   Danish                                  
de      de  deu DEU German                                   German                                  
el      el  ell ELL Greek                                    Greek                                   
en      en  eng ENU English                                  English                                 
es      es  spa ESP Spanish                                  Spanish                                 
fi      fi  fin FIN Finnish                                  Finnish                                 
zh      zh  zho CHS Chinese                                  Chinese                                 
zh-Hant zh  zho CHT Chinese (Traditional)                    Chinese (Traditional)                   
zh-CHS  zh  zho CHS Chinese (Simplified) Legacy              Chinese (Simplified) Legacy             
zh-CHT  zh  zho CHT Chinese (Traditional) Legacy             Chinese (Traditional) Legacy            

*/
using System;
using System.Globalization;

public class SamplesCultureInfo
{

   public static void Main()
   {

      // Displays several properties of the neutral cultures.
      Console.WriteLine("CULTURE ISO ISO WIN DISPLAYNAME                              ENGLISHNAME");
      foreach (CultureInfo ci in CultureInfo.GetCultures(CultureTypes.NeutralCultures))
      {
         Console.Write("{0,-7}", ci.Name);
         Console.Write(" {0,-3}", ci.TwoLetterISOLanguageName);
         Console.Write(" {0,-3}", ci.ThreeLetterISOLanguageName);
         Console.Write(" {0,-3}", ci.ThreeLetterWindowsLanguageName);
         Console.Write(" {0,-40}", ci.DisplayName);
         Console.WriteLine(" {0,-40}", ci.EnglishName);
      }
   }
}


/*
This code produces the following output.  This output has been cropped for brevity.

CULTURE ISO ISO WIN DISPLAYNAME                              ENGLISHNAME
ar      ar  ara ARA Arabic                                   Arabic
bg      bg  bul BGR Bulgarian                                Bulgarian
ca      ca  cat CAT Catalan                                  Catalan
zh-Hans zh  zho CHS Chinese (Simplified)                     Chinese (Simplified)
cs      cs  ces CSY Czech                                    Czech
da      da  dan DAN Danish                                   Danish
de      de  deu DEU German                                   German
el      el  ell ELL Greek                                    Greek
en      en  eng ENU English                                  English
es      es  spa ESP Spanish                                  Spanish
fi      fi  fin FIN Finnish                                  Finnish
zh      zh  zho CHS Chinese                                  Chinese
zh-Hant zh  zho CHT Chinese (Traditional)                    Chinese (Traditional)
zh-CHS  zh  zho CHS Chinese (Simplified) Legacy              Chinese (Simplified) Legacy
zh-CHT  zh  zho CHT Chinese (Traditional) Legacy             Chinese (Traditional) Legacy

*/
Imports System.Globalization

Module Module1

   Public Sub Main()

      ' Displays several properties of the neutral cultures.
      Console.WriteLine("CULTURE ISO ISO WIN DISPLAYNAME                              ENGLISHNAME")
      Dim ci As CultureInfo
      For Each ci In CultureInfo.GetCultures(CultureTypes.NeutralCultures)
         Console.Write("{0,-7}", ci.Name)
         Console.Write(" {0,-3}", ci.TwoLetterISOLanguageName)
         Console.Write(" {0,-3}", ci.ThreeLetterISOLanguageName)
         Console.Write(" {0,-3}", ci.ThreeLetterWindowsLanguageName)
         Console.Write(" {0,-40}", ci.DisplayName)
         Console.WriteLine(" {0,-40}", ci.EnglishName)
      Next ci

   End Sub



'This code produces the following output.  This output has been cropped for brevity.
'
'CULTURE ISO ISO WIN DISPLAYNAME                              ENGLISHNAME
'ar      ar  ara ARA Arabic                                   Arabic                                  
'bg      bg  bul BGR Bulgarian                                Bulgarian                               
'ca      ca  cat CAT Catalan                                  Catalan                                 
'zh-Hans zh  zho CHS Chinese (Simplified)                     Chinese (Simplified)                    
'cs      cs  ces CSY Czech                                    Czech                                   
'da      da  dan DAN Danish                                   Danish                                  
'de      de  deu DEU German                                   German                                  
'el      el  ell ELL Greek                                    Greek                                   
'en      en  eng ENU English                                  English                                 
'es      es  spa ESP Spanish                                  Spanish                                 
'fi      fi  fin FIN Finnish                                  Finnish                                 
'zh      zh  zho CHS Chinese                                  Chinese                                 
'zh-Hant zh  zho CHT Chinese (Traditional)                    Chinese (Traditional)                   
'zh-CHS  zh  zho CHS Chinese (Simplified) Legacy              Chinese (Simplified) Legacy             
'zh-CHT  zh  zho CHT Chinese (Traditional) Legacy             Chinese (Traditional) Legacy            

End Module

Comentários

Esses valores de tipo de cultura são retornados pela CultureInfo.CultureTypes propriedade e também servem como um filtro que limita as culturas retornadas pelo CultureInfo.GetCultures método . Para obter mais informações sobre culturas, consulte CultureInfo.

Em geral, você enumera todas as culturas usando o CultureTypes.AllCultures valor . Isso permite a enumeração de culturas personalizadas, bem como de outros tipos de cultura.

Observe que todos os CultureTypes membros foram preteridos, exceto , CultureTypes.AllCulturesCultureTypes.NeutralCulturese CultureTypes.SpecificCultures.

O .NET reconhece os seguintes tipos de cultura, todos incluídos em enumerações retornadas pelo membro de CultureTypes.AllTypes enumeração:

  • Culturas específicas, que especificam um país/região e um idioma. Os nomes dessas culturas seguem RFC 4646. O formato é <languagecode2>-<country/regioncode2>, em <languagecode2> que é um código minúsculo de duas letras derivado do ISO 639-1 e <country/regioncode2> é um código maiúsculo de duas letras derivado do ISO 3166. Por exemplo, “en-US” para inglês (Estados Unidos) é uma cultura específica. Culturas específicas personalizadas (ou seja, culturas que são aplicativos, em vez de definidas pelo sistema) podem ter qualquer nome especificado pelo usuário, não apenas um compatível com padrões.

  • Culturas neutras, que especificam um idioma sem respeito a um país/região. Os nomes de culturas neutras consistem no código minúsculo de duas letras derivado do ISO 639-1. Por exemplo: “en” (inglês) é uma cultura neutra. Culturas neutras personalizadas (ou seja, culturas que são aplicativo, em vez de definidas pelo sistema) podem ter qualquer nome especificado pelo usuário, não apenas um código de duas letras.

    A cultura invariável é incluída na matriz de culturas retornadas pelo CultureInfo.GetCultures método que especifica esse valor.

  • Culturas personalizadas, que são culturas definidas pelo aplicativo. As culturas personalizadas podem representar culturas específicas ou culturas neutras e podem ter qualquer nome especificado pelo aplicativo.

    Em versões do Windows anteriores a Windows 10, o UserCustomCulture valor é atribuído a culturas personalizadas criadas pelo desenvolvedor. Em Windows 10, o UserCustomCulture valor também é atribuído a culturas do sistema que não são apoiadas por um conjunto completo de dados culturais e que não têm identificadores locais exclusivos. (Todas as culturas do tipo UserCustomCulture compartilham um CultureInfo.LCID valor de LOCALE_CUSTOM_UNSPECIFIED (0x1000 ou 4096)). Como resultado, o CultureInfo.GetCultures(CultureTypes.UserCustomCulture) método retorna diferentes conjuntos de culturas em diferentes versões do Windows.

Aplica-se a

Confira também