Udostępnij za pośrednictwem


CultureTypes Wyliczenie

Definicja

Definiuje typy list kultury, które można pobrać przy użyciu GetCultures(CultureTypes) metody .

To wyliczenie obsługuje bitową kombinację jego wartości składowych.

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
Dziedziczenie
CultureTypes
Atrybuty

Pola

AllCultures 7

Wszystkie kultury rozpoznawane przez platformę .NET, w tym kultury neutralne i specyficzne oraz kultury niestandardowe utworzone przez użytkownika.

W systemach .NET Framework 4 i nowszych i .NET Core działających w systemie Windows zawiera ona dane kultury dostępne w systemie operacyjnym Windows. Na platformie .NET Core działającej w systemach Linux i macOS zawiera dane kultury zdefiniowane w bibliotekach ICU.

AllCultures to pole złożone zawierające NeutralCultureswartości , SpecificCulturesi InstalledWin32Cultures .

FrameworkCultures 64

Ten element członkowski jest przestarzały; użycie tej wartości z wartością GetCultures(CultureTypes) zwraca neutralną i konkretną kulturę dostarczoną z .NET Framework 2.0.

InstalledWin32Cultures 4

Ten element członkowski jest przestarzały. Wszystkie kultury zainstalowane w systemie operacyjnym Windows.

NeutralCultures 1

Kultury skojarzone z językiem, ale nie są specyficzne dla kraju/regionu.

ReplacementCultures 16

Ten element członkowski jest przestarzały. Kultury niestandardowe utworzone przez użytkownika, które zastępują kultury dostarczane .NET Framework.

SpecificCultures 2

Kultury specyficzne dla kraju/regionu.

UserCustomCulture 8

Ten element członkowski jest przestarzały. Kultury niestandardowe utworzone przez użytkownika.

WindowsOnlyCultures 32

Ten element członkowski jest przestarzały i jest ignorowany.

Przykłady

W poniższym przykładzie przedstawiono element członkowski wyliczenia CultureTypes.AllCultures i CultureTypes właściwość .

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

W poniższym przykładzie przedstawiono kilka właściwości kultur neutralnych.

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

Uwagi

Te wartości typu kultury są zwracane przez CultureInfo.CultureTypes właściwość, a także służą jako filtr, który ogranicza kultury zwracane przez metodę CultureInfo.GetCultures . Aby uzyskać więcej informacji na temat kultur, zobacz CultureInfo.

Ogólnie rzecz biorąc, wyliczasz wszystkie kultury przy użyciu CultureTypes.AllCultures wartości . Umożliwia to wyliczanie kultur niestandardowych, a także innych typów kultury.

Należy pamiętać, że wszyscy CultureTypes członkowie zostali przestarzali z wyjątkiem CultureTypes.AllCultures, CultureTypes.NeutralCulturesi CultureTypes.SpecificCultures.

Platforma .NET rozpoznaje następujące typy kultury, z których wszystkie są uwzględniane w wyliczeniach zwracanych przez CultureTypes.AllTypes element członkowski wyliczenia:

  • Określone kultury, które określają kraj/region i język. Nazwy tych kultur są zgodne z RFC 4646. Format to <languagecode2>-<country/regioncode2>, gdzie <languagecode2> jest dwuliterowym kodem pochodzącym z ISO 639-1 i <country/regioncode2> jest dwuliterowym kodem pochodzącym z ISO 3166. Na przykład "en-US" dla języka angielskiego (Stany Zjednoczone) jest określoną kulturą. Niestandardowe kultury specyficzne (czyli kultury, które są aplikacjami, a nie zdefiniowane przez system) mogą mieć dowolną nazwę określoną przez użytkownika, a nie tylko zgodną ze standardami.

  • Kultury neutralne, które określają język bez względu na kraj/region. Nazwy kultur neutralnych składają się z małych liter dwuliterowych kodu pochodzącego z iso 639-1. Na przykład: "en" (angielski) jest kulturą neutralną. Niestandardowe kultury neutralne (czyli kultury, które są aplikacjami, a nie zdefiniowane przez system) mogą mieć dowolną nazwę określoną przez użytkownika, a nie tylko dwuliterowy kod.

    Niezmienna kultura jest uwzględniana w tablicy kultur zwracanych przez metodę określającą CultureInfo.GetCultures tę wartość.

  • Kultury niestandardowe, które są kulturami zdefiniowanymi przez aplikację. Kultury niestandardowe mogą reprezentować określone kultury lub kultury neutralne i mogą mieć dowolną nazwę określoną przez aplikację.

    W wersjach systemu Windows przed Windows 10 UserCustomCulture wartość jest przypisywana do kultur niestandardowych utworzonych przez dewelopera. W Windows 10 UserCustomCulture wartość jest również przypisywana do kultur systemowych, które nie są wspierane przez kompletny zestaw danych kulturowych i które nie mają unikatowych identyfikatorów lokalnych. (Wszystkie kultury typu UserCustomCulture mają wartość CultureInfo.LCIDLOCALE_CUSTOM_UNSPECIFIED (0x1000 lub 4096)). W rezultacie CultureInfo.GetCultures(CultureTypes.UserCustomCulture) metoda zwraca różne zestawy kultur w różnych wersjach systemu Windows.

Dotyczy

Zobacz też