CultureTypes Перечисление
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Определяет типы списков языков и региональных параметров, которые можно получить с помощью метода GetCultures(CultureTypes).
Это перечисление поддерживает побитовую комбинацию значений его членов.
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
- Наследование
- Атрибуты
Поля
AllCultures | 7 | Все языки и региональные параметры, распознаваемые .NET, включая нейтральные и конкретные языки и региональные параметры, а также пользовательские языки и региональные параметры, созданные пользователем. В .NET Framework 4 и более поздних версиях и .NET Core под управлением Windows содержатся данные языка и региональных параметров, доступные в операционной системе Windows. В .NET Core под управлением Linux и macOS содержатся данные языка и региональных параметров, которые определены в библиотеках ICU. AllCultures представляет собой составное поле, содержащее значения NeutralCultures, SpecificCultures и InstalledWin32Cultures. |
FrameworkCultures | 64 | Этот элемент считается нерекомендуемым. При использовании этого значения с GetCultures(CultureTypes) будут возвращены нейтральные и конкретные языки и региональные параметры, поставляемые с платформой .NET Framework 2.0. |
InstalledWin32Cultures | 4 | Этот элемент устарел. Все языки и региональные параметры, установленные в операционной системе Windows. |
NeutralCultures | 1 | Языки и региональные параметры, связанные с языком, но не с определенной страной или регионом. |
ReplacementCultures | 16 | Этот элемент устарел. Пользовательский язык и региональные параметры, замещающие язык и региональные параметры платформы .NET Framework. |
SpecificCultures | 2 | Языки и региональные параметры, присущие стране или региону. |
UserCustomCulture | 8 | Этот элемент устарел. Пользовательские языки и региональные параметры. |
WindowsOnlyCultures | 32 | Этот элемент считается нерекомендуемым и игнорируется. |
Примеры
В следующем примере демонстрируется CultureTypes.AllCultures
элемент перечисления и CultureTypes свойство .
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
В следующем примере отображается несколько свойств нейтральных языков и региональных параметров.
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
Комментарии
Эти значения типа языка и региональных параметров возвращаются свойством CultureInfo.CultureTypes , а также служат фильтром, ограничивающим язык и региональные параметры, возвращаемые методом CultureInfo.GetCultures . Дополнительные сведения о языках и региональных параметрах см. в разделе CultureInfo.
Как правило, вы перечисляете все язык и региональные параметры с помощью CultureTypes.AllCultures
значения . Это позволяет перечислять пользовательские языки и региональные параметры, а также другие типы языка и региональных параметров.
Обратите внимание, что все CultureTypes
члены являются устаревшими, CultureTypes.AllCultures
за исключением , CultureTypes.NeutralCultures
и CultureTypes.SpecificCultures
.
.NET распознает следующие типы языка и региональных параметров, все из которых включены в перечисления, возвращаемые элементом CultureTypes.AllTypes
перечисления:
Конкретные язык и региональные параметры, которые указывают страну или регион и язык. Названия этих языков и региональных параметров соответствуют стандарту RFC 4646. Формат —
<languagecode2>-<country/regioncode2>
, где<languagecode2>
— двухбуквенный код в нижнем регистре, производный от ISO 639-1, а<country/regioncode2>
— двухбуквенный код в верхнем регистре, производный от ISO 3166. Например, код en-US, означающий английский язык (США), относится к конкретным языкам и региональным параметрам. Пользовательские языки и региональные параметры (т. е. язык и региональные параметры, определяемые приложением, а не системой) могут иметь любое имя, указанное пользователем, а не только соответствующее стандартам.Нейтральные язык и региональные параметры, которые указывают язык без учета страны или региона. Имена нейтральных языков и региональных параметров состоят из двухбуквенный код нижнего регистра, производный от ISO 639-1. Например, en (английский) относится к нейтральным языкам и региональным параметрам. Пользовательские нейтральные языки и региональные параметры (т. е. языки и региональные параметры, определяемые приложением, а не системой) могут иметь любое имя, указанное пользователем, а не просто двухбуквенный код.
Инвариантный язык и региональные параметры включаются в массив языков и региональных параметров, возвращаемых методом CultureInfo.GetCultures , который задает это значение.
Пользовательские языки и региональные параметры, которые являются языком и региональными параметрами, определяемыми приложением. Пользовательские языки и региональные параметры могут представлять как определенные, так и нейтральные языки и региональные параметры, а также могут иметь любое имя, указанное приложением.
В версиях Windows до Windows 10 значение присваивается пользовательским языкам и региональным параметрам,
UserCustomCulture
созданным разработчиком. В Windows 10 значение также назначается системным языкам и региональным параметрам,UserCustomCulture
которые не поддерживаются полным набором данных языка и региональных параметров и не имеют уникальных локальных идентификаторов. (Все языки и региональные параметры типаUserCustomCulture
имеют CultureInfo.LCID значениеLOCALE_CUSTOM_UNSPECIFIED
(0x1000 или 4096)). В результатеCultureInfo.GetCultures(CultureTypes.UserCustomCulture)
метод возвращает различные наборы языков и региональных параметров в разных версиях Windows.