Aracılığıyla paylaş


UCRT Yerel Ayar adları, Diller ve Ülke/Bölge dizeleri

Bağımsız değişkenini locale ,_wsetlocale , _create_localeve _wcreate_locale işlevlerine setlocaleçeşitli yollarla ayarlayabilirsiniz. Yerel ayar, Windows NLS API'sinin desteklediği yerel ayar adları, diller, ülke/bölge kodları ve kod sayfaları kullanılarak ayarlanabilir. locale bağımsız değişkeni aşağıdaki formlardan birini alır:

locale :: "locale-name"
 | "language[_country-region[.code-page]]"
 | ".kod sayfası"
 | "C"
 | ""
 | NULL

Yerel ayar-adı formu kısa, IETF standartlaştırılmış bir dizedir; örneğin, en-US İngilizce (Birleşik Devletler) veya bs-Cyrl-BA Boşnakça (Kiril, Bosna-Hersek) için. Bu formlar tercih edilir. Windows işletim sistemi sürümüne göre desteklenen yerel ayar adlarının listesi için Ek A: [MS-LCID'de Ürün Davranışı]: Windows Dil Kodu Tanımlayıcısı (LCID) Başvurusu'ndaki tablonun Dil etiketi sütununa bakın. Bu kaynak yerel ayar adlarının desteklenen dilini, betiğini ve bölge bölümlerini listeler. Varsayılan olmayan sıralama düzenlerine sahip desteklenen yerel ayar adları hakkında bilgi için Sıralama düzeni tanımlayıcıları'ndaki Yerel ayar adı sütununa bakın. Windows 10 veya üzeri altında, geçerli BCP-47 dil etiketlerine karşılık gelen yerel ayar adlarına izin verilir. Örneğin, jp-US geçerli bir BCP-47 etiketidir, ancak yalnızca US yerel ayar işlevselliği için geçerlidir.

Dil[_country-region[.code-page]] formu, bir dil dizesi veya dil dizesi ile ülke veya bölge dizesi yerel ayarı oluşturmak için kullanıldığında kategorinin yerel ayarında depolanır. Desteklenen dil dizeleri kümesi Dil dizeleri bölümünde açıklanır ve desteklenen ülke ve bölge dizelerinin listesi Ülke/Bölge dizelerinde listelenir. Belirtilen dil belirtilen ülke veya bölgeyle ilişkilendirilmemişse, belirtilen ülke veya bölge için varsayılan dil yerel ayarda depolanır. Koda eklenmiş veya depolama alanına seri hale getirilmiş yerel ayar dizeleri için bu formu önermiyoruz: Bu dizelerin bir işletim sistemi güncelleştirmesi tarafından değiştirilmesi, yerel ayar adı formundan daha olasıdır.

Kod sayfası , yerel ayar ile ilişkili ANSI/OEM kod sayfasıdır. Bir yerel ayarı yalnızca dile veya dile ve ülkeye/bölgeye göre belirttiğinizde kod sayfası sizin için belirlenir. Özel değer .ACP , ülke/bölge için ANSI kod sayfasını belirtir. Özel değer .OCP , ülke/bölge için OEM kod sayfasını belirtir. Örneğin, yerel ayar olarak belirtirseniz "Greek_Greece.ACP" , yerel ayar olarak Greek_Greece.1253 depolanır (Yunanca için ANSI kod sayfası) ve yerel ayar olarak belirtirseniz "Greek_Greece.OCP" , olarak Greek_Greece.737 depolanır (Yunanca için OEM kod sayfası). Kod sayfaları hakkında daha fazla bilgi için bkz . Kod sayfaları. Windows'da desteklenen kod sayfalarının listesi için bkz . Kod sayfası tanımlayıcıları.

Yerel ayarı belirtmek için yalnızca kod sayfasını kullanırsanız, kullanıcının varsayılan dili ve tarafından GetUserDefaultLocaleName bildirilen ülke/bölge kullanılır. Örneğin, İngilizce (Birleşik Devletler) için yapılandırılmış bir kullanıcının yerel ayarı olarak (ANSI Türkçe) belirtirseniz ".1254" , depolanan yerel ayar olurEnglish_United States.1254. Tutarsız davranışa neden olabileceği için bu formu önermiyoruz.

locale bağımsız değişken değeriC, C çevirisi için en düşük ANSI uyumlu ortamı belirtir. C Yerel ayar, her char veri türünün 1 bayt ve değerinin her zaman 256'dan küçük olduğunu varsayar. Boş bir dizeye işaret ederse locale , yerel ayar uygulama tanımlı yerel ortamdır.

kategorisini kullanarak LC_ALL ve _wsetlocale işlevleri için setlocale tüm yerel ayar kategorilerini aynı anda belirtebilirsiniz. Kategorilerin tümü aynı yerel ayara ayarlanabilir veya bu biçime sahip bir yerel bağımsız değişken kullanarak her kategoriyi ayrı ayrı ayarlayabilirsiniz:

LC-ALL-specifier :: locale
 | [LC_COLLATE=locale][;LC_CTYPE=locale][;LC_MONETARY=locale][;LC_NUMERIC=locale][;LC_TIME=locale]

Noktalı virgüllerle ayrılmış şekilde, birden çok kategori türü belirtebilirsiniz. Belirtilmeyen kategori türleri geçerli yerel ayar ayarını kullanır. Örneğin, bu kod parçacığı tüm kategoriler için geçerli yerel ayarı olarak de-DEayarlar ve sonra kategorileri LC_MONETARYen-GB ve LC_TIME olarak es-ESayarlar:

_wsetlocale(LC_ALL, L"de-DE");
_wsetlocale(LC_ALL, L"LC_MONETARY=en-GB;LC_TIME=es-ES");

UTF-8 Desteği

UTF-8 desteği, yerel ayar dizenizdeki UTF-8 kod sayfası kullanılarak etkinleştirilebilir. Daha fazla bilgi için, öğesinin UTF-8 destek bölümüne setlocalebakın.

Ayrıca bkz.

C çalışma zamanı kitaplığı başvurusu
_get_current_locale
setlocale, _wsetlocale
_create_locale, _wcreate_locale
Dil dizeleri
Ülke/Bölge dizeleri