Языковые и региональные параметры, созданные на основе языковых стандартов Windows
Обновлен: Ноябрь 2007
Поддержка глобализации в .NET Framework предполагает автоматическое создание языка и региональных параметров, соответствующих языковым стандартам Windows, если такой язык и параметры отсутствуют в платформе .NET Framework.
Создаваемые языки и региональные параметры
В состав Windows входит набор языковых стандартов, эквивалентных языку и региональным параметрам в платформе .NET Framework, которые определяют конкретные для языка сведения, например способы сортировки текста, форматирования даты и формат отображения чисел и денежных единиц. Кроме того, Windows поддерживает такую возможность, как (ELK), позволяющую добавлять новые языковые стандарты без установки нового выпуска операционной системы. В результате приложение сможет добавлять в Windows языковой стандарт, для которого в платформе .NET Framework отсутствуют соответствующий язык и региональные параметры.
При попытке приложения создать объект CultureInfo для языка и региональных параметров, отсутствующих в платформе .NET Framework, в то время как соответствующий языковой стандарт присутствует в Windows, .NET Framework автоматически создаст новый язык и региональные параметры на основе языкового стандарта Windows. Новый язык и региональные параметры создаются путем определения их имени или LCID, после чего они могут использоваться наравне с другими языками и региональными параметрами платформы .NET Framework.
Имя созданного языка и региона состоит из языкового кода ISO 639, кода страны или региона ISO 3166 и дополнительного тега сценария ISO 15924 для написания языка. Например, языковой стандарт, где язык — боснийский, страна его использования — Босния, символы написания — латиница, выглядит следующим образом: "Боснийский (латиница, Босния)".
Особенности производительности
Язык и региональные параметры, созданные на основе языковых стандартов Windows, генерируются при первом вызове конструктора CultureInfo для этих параметров, причем процесс создания является длительным. Однако создание последующих объектов языка и региональных параметров не вызывает снижения производительности.
Сериализация и десериализация языка и региональных параметров — это процесс формирования двоичного представления объекта CultureInfo и последующее использование этого представления для воссоздания исходного объекта CultureInfo. Приложение может выполнять сериализацию языка и региональных параметров на одном компьютере, а десериализацию — на другом. Однако при сериализации языка и региональных параметров, извлеченных из языкового стандарта ELK, на одном компьютере создается исключение, если десериализация двоичного представления происходит на другом компьютере, где не установлен такой же языковой стандарт ELK.
Значения по умолчанию
Данные из языкового стандарта Windows используются для заполнения соответствующего свойства объекта CultureInfo, созданного на основе этого языка. Если соответствующие данные отсутствуют, для свойства используются значения по умолчанию.
Возвращаемое значение многих методов CultureInfo и некоторых свойств зависит от данных, характерных для языка и региональных параметров. Если языковой стандарт Windows не предоставляет таких данных для созданного языка и региональных параметров, то извлекаются данные языковых параметров, используемых по умолчанию. В большинстве случаев язык и региональные параметры, используемые по умолчанию, являются инвариантным языком и региональными параметрами.
В следующей таблице перечислены значения по умолчанию для свойств и язык и региональные параметры по умолчанию для методов классов CultureInfo, RegionInfo, NumberFormatInfo, CompareInfo, TextInfo и Calendar , поддерживающих язык и региональные параметры платформы .NET.
CultureInfo
Член |
Значение по умолчанию |
---|---|
IsNeutralCulture |
false, поскольку в Windows отсутствуют нейтральные языки и региональные параметры. |
Parent |
Инвариантный язык и региональные параметры, поскольку в Windows отсутствуют нейтральные языки и региональные параметры. |
GetConsoleFallbackUICulture |
Инвариантный язык и региональные параметры. |
RegionInfo
Член |
Значение по умолчанию |
---|---|
GeoId |
Ноль для Windows 2000 (унаследованное значение из Windows XP и более поздних версий). |
DateTimeFormatInfo
Элемент |
Значение по умолчанию |
---|---|
GetAbbreviatedEraName |
Инвариантный язык и региональные параметры. |
GetEra |
Инвариантный язык и региональные параметры. |
GetEraName |
Инвариантный язык и региональные параметры. |
MonthDayPattern |
Инвариантный язык и региональные параметры. |
NativeCalendarName |
Инвариантный язык и региональные параметры. |
NumberFormatInfo
Элемент |
Значение по умолчанию |
---|---|
NaNSymbol |
Инвариантный язык и региональные параметры. |
NegativeInfinitySymbol |
Инвариантный язык и региональные параметры. |
PercentDecimalDigits |
Инвариантный язык и региональные параметры. |
PercentDecimalSeparator |
Инвариантный язык и региональные параметры. |
PercentGroupSeparator |
Инвариантный язык и региональные параметры. |
PercentGroupSizes |
Инвариантный язык и региональные параметры. |
PercentNegativePattern |
Инвариантный язык и региональные параметры. |
PercentPositivePattern |
Инвариантный язык и региональные параметры. |
PercentSymbol |
Инвариантный язык и региональные параметры. |
PerMilleSymbol |
Инвариантный язык и региональные параметры. |
PositiveInfinitySymbol |
Инвариантный язык и региональные параметры. |
CompareInfo
Элемент |
Значение по умолчанию |
---|---|
IndexOf |
(отсутствует) |
IsPrefix |
(отсутствует) |
IsSuffix |
(отсутствует) |
LastIndexOf |
(отсутствует) |
TextInfo
Элемент |
Значение по умолчанию |
---|---|
ToTitleCase |
Тот же результат, что и для региональных параметров en-US, пока кодовая страница ANSI языковых стандартов Windows не будет представлена на турецком языке. В этом случае значение по умолчанию соответствует результату для региональных параметров tr-TR. |
Календарь
Элемент |
Значение по умолчанию |
---|---|
Все |
Соответствующий элемент календаря, возвращенный InvariantCulture. |
Имена языков для последних версий ELK
В приложении язык и региональные параметры создаются путем определения имени или идентификатора языка (LCID) в конструкторе CultureInfo constructor. В следующей таблице перечислены имена языков, их идентификаторы, имена на английском языке, код языка ISO 639 и код страны ISO 3166 для языковых стандартов Windows, присутствующих в ELK версии 1 и 2.
Имя языка и региональных параметров |
Идентификатор языка и региональных параметров |
Название языка по-английски |
Код ISO 639 (язык) |
Код ISO 3166 (страна или регион) |
---|---|---|---|---|
Арауканский (Чили) |
047A |
Mapudungun (Chile) |
arn |
CL |
Бенгальский (Индия) |
0445 |
Bengali (India) |
bn |
IN |
Боснийский (кириллица, Босния и Герцеговина) |
201A |
Bosnian (Bosnia and Herzegovina, Cyrillic) |
bs |
BA |
Боснийский (латиница, Босния и Герцеговина) |
141A |
Bosnian (Bosnia and Herzegovina, Latin) |
bs |
BA |
Валлийский (Великобритания) |
0452 |
Welsh (United Kingdom) |
cy |
GB |
Дари (Афганистан) |
047F |
Dari (Afghanistan) |
fa |
AF |
Филиппинский (Филиппины) |
0464 |
Filipino (Philippines) |
fil |
PH |
Ирландский (Ирландия) |
043C |
Irish (Ireland) |
ga |
IE |
Хорватский (Босния и Герцеговина) |
101A |
Croatian (Bosnia and Herzegovina) |
hr |
BA |
Инуктитут (латиница, Канада) |
085D |
Inuktitut (Canada, Latin) |
iu |
CA |
Люксембургский (Люксембург) |
046E |
Luxembourgish (Luxembourg) |
lb |
LU |
Маори (Новая Зеландия) |
0481 |
Maori (New Zealand) |
mi |
NZ |
Малаялам (Индия) |
044C |
Malayalam (India) |
ml |
IN |
Могавк (Канада) |
047C |
Mohawk (Canada) |
moh |
CA |
Мальтийский (Мальта) |
043A |
Maltese (Malta) |
mt |
MT |
Непальский (Непал) |
0461 |
Nepali (Nepal) |
ne |
NP |
Сесото са Лебоа (Южная Африка) |
046C |
Sesotho sa Leboa/Northern Sotho (South Africa) |
nso |
ZA |
Пашто (Афганистан) |
0463 |
Pashto (Afghanistan) |
ps |
AF |
Кечуа (Боливия) |
046B |
Quechua (Bolivia) |
quz |
BO |
Кечуа (Эквадор) |
086B |
Quechua (Ecuador) |
quz |
EC |
Кечуа (Перу) |
0C6B |
Quechua (Peru) |
quz |
PE |
Ретороманский (Швейцария) |
0417 |
Romansh (Switzerland) |
rm |
CH |
Саамский северный (Финляндия) |
0C3B |
Sami (Northern, Finland) |
se |
FI |
Саамский северный (Норвегия) |
043B |
Sami (Northern, Norway) |
se |
NO |
Саамский северный (Швеция) |
083B |
Sami (Northern, Sweden) |
se |
SE |
Саамский Южный (Норвегия) |
183B |
Sami (Southern, Norway) |
sma |
NO |
Саамский Южный (Швеция) |
1C3B |
Sami (Southern, Sweden) |
sma |
SE |
Саамский Лул (Норвегия) |
103B |
Sami (Lule, Norway) |
smj |
NO |
Саамский Лул (Швеция) |
143B |
Sami (Lule, Sweden) |
smj |
SE |
Саамский Инари (Финляндия) |
243B |
Sami (Inari, Finland) |
smn |
FI |
Саамский Скольт (Финляндия) |
203B |
Sami (Skolt, Finland) |
sms |
FI |
Сербский (кириллица, Босния и Герцеговина) |
1C1A |
Serbian (Bosnia and Herzegovina, Cyrillic) |
sr |
BA |
Сербский (латиница, Босния и Герцеговина) |
181A |
Serbian (Bosnia and Herzegovina, Latin) |
sr |
BA |
Сетсвана (Южная Африка) |
0432 |
Setswana/Tswana (South Africa) |
tn |
ZA |
Верхний лужицкий (Германия) |
042E |
Upper Sorbian (Germany) |
wen |
DE |
Изихоза (Южная Африка) |
0434 |
Xhosa/isiXhosa (South Africa) |
xh |
ZA |
Изизулу (Южная Африка) |
0435 |
Zulu/isiZulu (South Africa) |
zu |
ZA |
См. также
Задачи
Практическое руководство. Создание настраиваемых региональных параметров