UCRT názvy národních prostředí, jazyků a zemí/oblastí

argument locale pro funkce setlocale, _wsetlocale, _create_localea _wcreate_locale lze nastavit pomocí názvů národních prostředí, jazyků, kódů zemí a oblastí a znakových stránek, které jsou podporovány Windows rozhraním NLS API. Argument locale má následující formát:

locale :: "locale-Name"
    | "Language[_země-region[.znaková stránka]] "
    | ".znaková stránka"
    | R
    | ""
    | PLATNOST

Forma názvu národního prostředí je krátký řetězec standardně IETF; například pro angličtinu (USA) nebo bs-Cyrl-BA pro bosenština (cyrilice, Bosna a Hercegovina). Tyto formuláře jsou upřednostňovány. seznam podporovaných názvů národního prostředí pomocí Windows verzi operačního systému najdete v části sloupec značka jazyka v tabulce v příloze a: chování produktu v [MS-LCID]: odkaz Windows identifikátoru kódu jazyka (lcid). Tento materiál obsahuje seznam podporovaných částí názvů národních prostředí, jež udávají jazyk, způsob zápisu a oblast. Informace o podporovaných názvech národního prostředí, které mají jiné než výchozí pořadí řazení, najdete ve sloupci název národního prostředí v části identifikátory pořadí řazení. v části Windows 10 nebo novější jsou názvy národních prostředí, které odpovídají platným značkám jazyka BCP-47 , povolené. Například jp-US je platná značka BCP-47, ale je efektivně pouze US pro funkce národního prostředí.

Jazyk[_země – oblast[.znaková stránka]] formulář je uložen v nastavení národního prostředí pro kategorii, pokud se k vytvoření národního prostředí používá řetězec jazyka, řetězec jazyka a řetězec země nebo oblasti. Sada podporovaných řetězců jazyka je popsána v části řetězce jazykaa seznam podporovaných řetězců země a oblasti je uveden v řetězcích země/oblasti. Pokud zadaný jazyk není přidružen k zadané zemi nebo oblasti, je výchozí jazyk pro zadanou zemi nebo oblast uložen v nastavení národního prostředí. Tuto formu řetězců národního prostředí vložených do kódu nebo serializovaných do úložiště nedoporučujeme, protože tyto řetězce s větší pravděpodobností podlehnou změně při aktualizaci operačního systému než u formy s názvem národního prostředí.

Znaková stránka je znaková stránka ANSI/OEM, která je přidružená k danému národnímu prostředí. Znakovou stránku za vás určíme, pokud zadáte národní prostředí pouze pomocí jazyka nebo jazyka a země či oblasti. Speciální hodnota .ACP Určuje znakovou stránku ANSI pro danou zemi nebo oblast. Speciální hodnota .OCP Určuje znakovou stránku OEM pro danou zemi nebo oblast. Pokud například zadáte "Greek_Greece.ACP" jako národní prostředí, národní prostředí je uloženo jako Greek_Greece.1253 (znaková stránka ANSI pro řečtinu) a Pokud určíte "Greek_Greece.OCP" jako národní prostředí, bude uloženo jako Greek_Greece.737 (znaková stránka OEM pro řečtinu). Další informace o znakových stránkách naleznete v tématu Code Pages. seznam podporovaných znakových stránek v Windows naleznete v tématu identifikátory znakových stránek.

Použijete-li k určení národního prostředí pouze znakovou stránku, budou použity výchozí jazyky uživatele a země/oblast hlášené nástrojem GetUserDefaultLocaleName . Pokud například zadáte ".1254" (ANSI turečtiny) jako národní prostředí pro uživatele, který je nakonfigurován pro angličtinu (USA), národní prostředí, které je uloženo, je English_United States.1254 . Tuto formu ukládání nedoporučujeme, protože může způsobit nekonzistentní chování.

Hodnota argumentu národního prostředí Určuje minimální prostředí vyhovující standardu ANSI pro překlad C. CNárodní prostředí předpokládá, že každý char datový typ je 1 bajt a jeho hodnota je vždy menší než 256. Pokud národní prostředí odkazuje na prázdný řetězec, národní prostředí je nativní prostředí definované implementací.

Můžete zadat všechny kategorie národního prostředí ve stejnou dobu pro setlocale_wsetlocale funkce a pomocí LC_ALL kategorie. Všechny kategorie mohou být nastaveny na stejné národní prostředí nebo můžete nastavit každou kategorii samostatně pomocí argumentu národního prostředí, který má tento tvar:

LC-All-specifikátor :: locale
    | [LC_COLLATE =národní prostředí] [; LC_CTYPE =národní prostředí] [; LC_MONETARY =národní prostředí] [; LC_NUMERIC =národní prostředí] [; LC_TIME =národní prostředí]

Můžete zadat více typů kategorií oddělených středníky. Typy kategorií, které nejsou zadány, používají aktuální nastavení národního prostředí. Například tento fragment kódu nastaví aktuální národní prostředí pro všechny kategorie na a de-DE poté nastaví kategorie LC_MONETARY na en-GB a LC_TIMEes-ES :

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

Podpora UTF-8

Podporu UTF-8 lze povolit pomocí znakové stránky UTF-8 v řetězci národního prostředí. Další informace najdete v části Podpora UTF-8 v tématu.

Viz také

Referenční dokumentace knihovny CRT
_get_current_locale
setlocale, _wsetlocale
_create_locale, _wcreate_locale
Řetězce jazyka
Řetězce země/oblasti