Partager via


Chaînes relatives aux noms, aux langues, au pays et à la région

L'argument locale des fonctions setlocale et _create_locale peut être défini en utilisant les noms de paramètres régionaux, les langages, les codes de pays ou de région, et les pages de codes prises en charge par l'API de NLS Windows. L'argument locale prend la forme suivante :

locale :: "locale_name"
        | "language[_country_region[.code_page]]"
        | ".code_page"
        | "C"
        | ""
        | NULL

Le nom des paramètres régionaux - par exemple, en-US pour l'anglais (États-Unis) ou bs-Cyrl-BA pour le Bosniaque (cyrillique, Bosnie-Herzégovine) est préféré. Le jeu de noms de paramètres régionaux est décrit dans Noms des paramètres régionaux. Pour une liste de noms de paramètres régionaux pris en charge par la version du système d'exploitation Windows, consultez la colonne Nom de culture de Référence de l'API NLS (National Language Support). Cette ressource répertorie le langage, le script, et les parties régionales des noms de paramètres régionaux pris en charge. Pour plus d'informations sur les noms de paramètres régionaux pris en charge qui ont des ordres de tri non définis par défaut, consultez la colonne Nom des paramètres régionaux dans Identificateurs d'ordre de tri.

La forme language[_country_region[.code_page]] est stockée dans les paramètres régionaux d'une catégorie lorsqu'une chaîne de langage, ou une chaîne de language et une chaîne de pays/région sont utilisées pour créer les paramètres régionaux. L'ensemble de chaînes de language prises en charge est décrit dans Chaînes de langue, et la liste de chaînes de pays/région prises en charge est répertoriée dans Chaînes pays/région. Si le langage spécifié n'est pas associé au pays/région spécifié(e), la langue par défaut pour le pays/la région spécifié(e) est stockée dans les paramètres régionaux. Nous ne recommandons pas cette forme pour les chaînes de paramètres régionaux incorporées dans le code ou sérialisées dans le stockage, car ces chaînes sont plus susceptibles d'être modifiées par une mise à niveau du système d'exploitation que par la forme de nom des paramètres régionaux.

La page de codes est la page de codes ANSI/OEM qui est associée aux paramètres régionaux. La page de codes est déterminée pour vous lorsque vous spécifiez des paramètres régionaux seulement par langage ou par langage et pays/région. La valeur spéciale .ACP spécifie la page de codes ANSI pour le pays/la région. La valeur spéciale .OCP spécifie la page de codes OEM pour le pays/la région. Par exemple, si vous spécifiez « Greek_Greece.ACP » comme paramètres régionaux, les paramètres régionaux sont stockés comme Greek_Greece.1253 (la page de codes ANSI pour le Grec), et si vous spécifiez « Greek_Greece.OCP » comme paramètres régionaux, ils sont stockés comme Greek_Greece.737 (la page de codes OEM du Grec). Pour plus d'informations sur les pages de code, consultez Pages de codes. Pour une liste des pages de codes prises en charge sous Windows, consultez Identificateurs de page de codes.

Si vous utilisez uniquement la page de codes pour spécifier les paramètres régionaux, la langue par défaut et le pays/la région du système sont utilisés. Par exemple, si vous spécifiez « .1254 » (turc ANSI) comme paramètres régionaux sur un système configuré pour l'anglais (États-Unis), les paramètres régionaux stockés sont English_United States.1254. Nous déconseillons cette forme, car elle peut aboutir à un comportement incohérent.

Une valeur locale de C spécifie l'environnement de conformation minimal ANSI pour la conversion en C. Les paramètres régionaux C supposent que chaque type de données char est 1 octet et que sa valeur est toujours inférieure à 256. Si locale pointe vers une chaîne vide, les paramètres régionaux sont donnés par l'environnement défini lors de l'implémentation.

Spécifiez toutes les catégories de paramètres régionaux en même temps pour les fonctions setlocale et _wsetlocale à l'aide de la catégorie LC_ALL. Les catégories peuvent toutes être définies aux mêmes paramètres régionaux, ou vous pouvez définir chaque catégorie individuellement en utilisant un argument de paramètres régionaux qui se présente comme suit :

LC_ALL_specifier :: locale
        | [LC_COLLATE=locale][;LC_CTYPE=locale][;LC_MONETARY=locale][;LC_NUMERIC=locale][;LC_TIME=locale]

Spécifiez plusieurs types de catégories, séparés par des points-virgules. Les types de catégories non spécifiés utilisent les paramètres régionaux actuels. Par exemple, ce code définit les paramètres régionaux actuels pour toutes les catégories dans de-DE, puis définit les catégories LC_MONETARY à en-GB et LC_TIME à es-ES :

_wsetlocale(LC_ALL, L"de-DE");

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

Voir aussi

Référence

_get_current_locale

setlocale, _wsetlocale

_create_locale, _wcreate_locale

Chaînes de langue

Chaînes pays/région

Autres ressources

Référence sur les bibliothèques Runtime C