Языковые и региональные параметры, созданные на основе языковых стандартов 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

См. также

Задачи

Практическое руководство. Создание настраиваемых региональных параметров

Ссылки

CultureInfo

CultureAndRegionInfoBuilder