Sdílet prostřednictvím


CultureTypes Výčet

Definice

Definuje typy seznamů jazykové verze, které lze načíst pomocí metody GetCultures(CultureTypes).

Tento výčet podporuje bitové kombinace hodnot jeho členů.

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
Dědičnost
CultureTypes
Atributy

Pole

Name Hodnota Description
NeutralCultures 1

Jazykové verze, které jsou přidružené k jazyku, ale nejsou specifické pro zemi nebo oblast.

SpecificCultures 2

Jazykové verze, které jsou specifické pro zemi nebo oblast.

InstalledWin32Cultures 4

Tento člen je zastaralý. Všechny jazykové verze nainstalované v operačním systému Windows.

AllCultures 7

Všechny jazykové verze, které rozhraní .NET rozpozná, včetně neutrálních a specifických jazykových verzí a vlastních jazykových verzí vytvořených uživatelem.

V rozhraní .NET Framework 4 a novějších verzích a .NET Core spuštěných ve Windows obsahuje data jazykové verze dostupná z operačního systému Windows. V .NET Core spuštěném v Linuxu a macOS zahrnuje data jazykové verze definovaná v knihovnách ICU.

AllCultures je složené pole, které obsahuje NeutralCultureshodnotu , SpecificCulturesa InstalledWin32Cultures hodnoty.

UserCustomCulture 8

Tento člen je zastaralý. Vlastní jazykové verze vytvořené uživatelem

ReplacementCultures 16

Tento člen je zastaralý. Vlastní jazykové verze vytvořené uživatelem, který nahrazuje jazykové verze dodané s rozhraním .NET Framework.

WindowsOnlyCultures 32

Tento člen je zastaralý a ignoruje se.

FrameworkCultures 64

Tento člen je zastaralý; použití této hodnoty s vrácením GetCultures(CultureTypes) neutrálních a specifických jazykových verzí dodávaných s rozhraním .NET Framework 2.0.

Příklady

Následující příklad ukazuje člen výčtu CultureTypes.AllCulturesCultureTypes a vlastnost.

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

Následující příklad zobrazí několik vlastností neutrálních jazykových verzí.

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
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-Hans zh  zho CHS Chinese (Simplified)                     Chinese (Simplified)
zh-Hant zh  zho ZHH Chinese (Traditional)                    Chinese (Traditional)

Note: zh-Hant returns ZHH when using ICU (default). When NLS mode is enabled, it returns CHT.

*/

' 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

'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
'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-Hans zh  zho CHS Chinese (Simplified)                     Chinese (Simplified)
'zh-Hant zh  zho ZHH Chinese (Traditional)                    Chinese (Traditional)
'
'Note: zh-Hant returns ZHH when using ICU (default). When NLS mode is enabled, it returns CHT.

Poznámky

Tyto hodnoty typu jazykové verze jsou vráceny CultureInfo.CultureTypes vlastností a slouží také jako filtr, který omezuje jazykové verze vrácené metodou CultureInfo.GetCultures . Další informace o jazykových verzích naleznete v tématu CultureInfo.

Obecně platí, že pomocí hodnoty vypíšete všechny jazykové verze CultureTypes.AllCultures . To umožňuje výčet vlastních jazykových verzí a dalších typů jazykové verze.

Všimněte si, že všichni CultureTypes členové jsou zastaralí s výjimkou CultureTypes.AllCultures, CultureTypes.NeutralCulturesa CultureTypes.SpecificCultures.

.NET rozpozná následující typy jazykové verze, z nichž všechny jsou zahrnuté ve výčtech vrácených členem výčtu CultureTypes.AllTypes :

  • Konkrétní jazykové verze, které určují zemi/oblast a jazyk. Názvy těchto jazykových verzí se řídí dokumentem RFC 4646. Formát je , kde <languagecode2> je <languagecode2>-<country/regioncode2>malými písmeny dvoumísmenný kód odvozený z ISO 639-1 a <country/regioncode2> je velkým dvoumísmenným kódem odvozeným od ISO 3166. Například "en-US" pro angličtinu (Spojené státy) je specifická kultura. Vlastní konkrétní jazykové verze (tj. jazykové verze, které jsou definované aplikací, nikoli systémem definované), můžou mít libovolný uživatelsky zadaný název, a ne jenom vyhovující standardům.

  • Neutrální jazykové verze, které určují jazyk bez ohledu na zemi/oblast. Názvy neutrálních jazykových verzí se skládají z malého dvoumístného kódu odvozeného od ISO 639-1. Například" "en" (angličtina) je neutrální jazyková verze. Vlastní neutrální jazykové verze (tj. jazykové verze, které nejsou definované systémem) můžou mít libovolný uživatelsky zadaný název, nejen dvoupísmenný kód.

    Invariantní jazyková verze je zahrnuta do pole jazykových verzí vrácených metodou CultureInfo.GetCultures , která určuje tuto hodnotu.

  • Vlastní jazykové verze, což jsou jazykové verze definované aplikací. Vlastní jazykové verze můžou představovat konkrétní jazykové verze nebo neutrální jazykové verze a mohou mít libovolný název zadaný aplikací.

    Ve verzích Windows starších než Windows 10 UserCustomCulture se tato hodnota přiřadí vlastním jazykům vytvořeným vývojářem. Ve Windows 10 UserCustomCulture je tato hodnota také přiřazena systémovým jazykovým verzím, které nejsou podporovány úplnou sadou kulturních dat a nemají jedinečné místní identifikátory. (Všechny jazykové verze typu UserCustomCulture sdílejí CultureInfo.LCID hodnotu LOCALE_CUSTOM_UNSPECIFIED (0x1000 nebo 4096)). V důsledku toho metoda CultureInfo.GetCultures(CultureTypes.UserCustomCulture) vrátí různé sady jazykových verzí v různých verzích Windows.

Platí pro

Viz také