Go to the documentation of this file.
203 #define ULOC_CHINESE "zh"
205 #define ULOC_ENGLISH "en"
207 #define ULOC_FRENCH "fr"
209 #define ULOC_GERMAN "de"
211 #define ULOC_ITALIAN "it"
213 #define ULOC_JAPANESE "ja"
215 #define ULOC_KOREAN "ko"
217 #define ULOC_SIMPLIFIED_CHINESE "zh_CN"
219 #define ULOC_TRADITIONAL_CHINESE "zh_TW"
222 #define ULOC_CANADA "en_CA"
224 #define ULOC_CANADA_FRENCH "fr_CA"
226 #define ULOC_CHINA "zh_CN"
228 #define ULOC_PRC "zh_CN"
230 #define ULOC_FRANCE "fr_FR"
232 #define ULOC_GERMANY "de_DE"
234 #define ULOC_ITALY "it_IT"
236 #define ULOC_JAPAN "ja_JP"
238 #define ULOC_KOREA "ko_KR"
240 #define ULOC_TAIWAN "zh_TW"
242 #define ULOC_UK "en_GB"
244 #define ULOC_US "en_US"
251 #define ULOC_LANG_CAPACITY 12
258 #define ULOC_COUNTRY_CAPACITY 4
264 #define ULOC_FULLNAME_CAPACITY 157
271 #define ULOC_SCRIPT_CAPACITY 6
277 #define ULOC_KEYWORDS_CAPACITY 96
283 #define ULOC_KEYWORD_AND_VALUES_CAPACITY 100
289 #define ULOC_KEYWORD_SEPARATOR '@'
296 #define ULOC_KEYWORD_SEPARATOR_UNICODE 0x40
302 #define ULOC_KEYWORD_ASSIGN '='
309 #define ULOC_KEYWORD_ASSIGN_UNICODE 0x3D
315 #define ULOC_KEYWORD_ITEM_SEPARATOR ';'
322 #define ULOC_KEYWORD_ITEM_SEPARATOR_UNICODE 0x3B
348 #ifndef U_HIDE_DEPRECATED_API
359 #endif // U_HIDE_DEPRECATED_API
362 #ifndef U_HIDE_SYSTEM_API
414 int32_t languageCapacity,
432 int32_t scriptCapacity,
450 int32_t countryCapacity,
468 int32_t variantCapacity,
491 int32_t nameCapacity,
514 int32_t nameCapacity,
570 const char* displayLocale,
572 int32_t languageCapacity,
593 const char* displayLocale,
595 int32_t scriptCapacity,
618 const char* displayLocale,
620 int32_t countryCapacity,
642 const char* displayLocale,
644 int32_t variantCapacity,
689 const char* displayLocale,
691 int32_t destCapacity,
716 const char* displayLocale,
718 int32_t destCapacity,
738 const char* inLocaleID,
740 int32_t maxResultSize,
776 U_STABLE const char*
const* U_EXPORT2
788 U_STABLE const char*
const* U_EXPORT2
807 int32_t parentCapacity,
838 int32_t nameCapacity,
869 const char* keywordName,
870 char* buffer, int32_t bufferCapacity,
906 const char* keywordValue,
907 char* buffer, int32_t bufferCapacity,
971 ULOC_ACCEPT_FAILED = 0,
972 ULOC_ACCEPT_VALID = 1,
973 ULOC_ACCEPT_FALLBACK = 2
994 const char *httpAcceptLanguage,
1014 int32_t acceptListCount,
1071 char* maximizedLocaleID,
1072 int32_t maximizedLocaleIDCapacity,
1111 char* minimizedLocaleID,
1112 int32_t minimizedLocaleIDCapacity,
1141 int32_t localeIDCapacity,
1142 int32_t* parsedLength,
1169 int32_t langtagCapacity,
int32_t uloc_getBaseName(const char *localeID, char *name, int32_t nameCapacity, UErrorCode *err)
Gets the full name for the specified locale, like uloc_getName(), but without keywords.
int32_t uloc_getParent(const char *localeID, char *parent, int32_t parentCapacity, UErrorCode *err)
Truncate the locale ID string to get the parent locale ID.
ULayoutType uloc_getCharacterOrientation(const char *localeId, UErrorCode *status)
Get the layout character orientation for the specified locale.
UBool uloc_isRightToLeft(const char *locale)
Returns whether the locale's script is written right-to-left.
int32_t uloc_forLanguageTag(const char *langtag, char *localeID, int32_t localeIDCapacity, int32_t *parsedLength, UErrorCode *err)
Returns a locale ID for the specified BCP47 language tag string.
Basic definitions for ICU, for both C and C++ APIs.
int32_t uloc_getDisplayScript(const char *locale, const char *displayLocale, UChar *script, int32_t scriptCapacity, UErrorCode *status)
Gets the script name suitable for display for the specified locale.
@ ULOC_ACTUAL_LOCALE
This is locale the data actually comes from.
int8_t UBool
The ICU boolean type.
int32_t uloc_acceptLanguage(char *result, int32_t resultAvailable, UAcceptResult *outResult, const char **acceptList, int32_t acceptListCount, UEnumeration *availableLocales, UErrorCode *status)
Based on a list of available locales, determine an acceptable locale for the user.
ULocDataLocaleType
Constants for *_getLocale() Allow user to select whether she wants information on requested,...
const char *const * uloc_getISOLanguages(void)
Gets a list of all available 2-letter language codes defined in ISO 639, plus additional 3-letter cod...
int32_t uloc_acceptLanguageFromHTTP(char *result, int32_t resultAvailable, UAcceptResult *outResult, const char *httpAcceptLanguage, UEnumeration *availableLocales, UErrorCode *status)
Based on a HTTP header from a web browser and a list of available locales, determine an acceptable lo...
const char * uloc_toLegacyType(const char *keyword, const char *value)
Converts the specified keyword value (BCP 47 Unicode locale extension type, or legacy type or type al...
ULayoutType
enums for the return value for the character and line orientation functions.
void uloc_setDefault(const char *localeID, UErrorCode *status)
Sets ICU's default locale.
int32_t uloc_getDisplayVariant(const char *locale, const char *displayLocale, UChar *variant, int32_t variantCapacity, UErrorCode *status)
Gets the variant name suitable for display for the specified locale.
int32_t uloc_getScript(const char *localeID, char *script, int32_t scriptCapacity, UErrorCode *err)
Gets the script code for the specified locale.
const char *const * uloc_getISOCountries(void)
Gets a list of all available 2-letter country codes defined in ISO 639.
int32_t uloc_minimizeSubtags(const char *localeID, char *minimizedLocaleID, int32_t minimizedLocaleIDCapacity, UErrorCode *err)
Minimize the subtags for a provided locale ID, per the algorithm described in the following CLDR tech...
int32_t uloc_getName(const char *localeID, char *name, int32_t nameCapacity, UErrorCode *err)
Gets the full name for the specified locale.
const char * uloc_getISO3Language(const char *localeID)
Gets the ISO language code for the specified locale.
const char * uloc_getDefault(void)
Gets ICU's default locale.
UErrorCode
Error code to replace exception handling, so that the code is compatible with all C++ compilers,...
int32_t uloc_getKeywordValue(const char *localeID, const char *keywordName, char *buffer, int32_t bufferCapacity, UErrorCode *status)
Get the value for a keyword.
UEnumeration * uloc_openKeywords(const char *localeID, UErrorCode *status)
Gets an enumeration of keywords for the specified locale.
const char * uloc_getAvailable(int32_t n)
Gets the specified locale from a list of all available locales.
int32_t uloc_getDisplayLanguage(const char *locale, const char *displayLocale, UChar *language, int32_t languageCapacity, UErrorCode *status)
Gets the language name suitable for display for the specified locale.
int32_t uloc_getCountry(const char *localeID, char *country, int32_t countryCapacity, UErrorCode *err)
Gets the country code for the specified locale.
@ ULOC_VALID_LOCALE
This is the most specific locale supported by ICU.
int32_t uloc_toLanguageTag(const char *localeID, char *langtag, int32_t langtagCapacity, UBool strict, UErrorCode *err)
Returns a well-formed language tag for this locale ID.
int32_t uloc_addLikelySubtags(const char *localeID, char *maximizedLocaleID, int32_t maximizedLocaleIDCapacity, UErrorCode *err)
Add the likely subtags for a provided locale ID, per the algorithm described in the following CLDR te...
int32_t uloc_getDisplayName(const char *localeID, const char *inLocaleID, UChar *result, int32_t maxResultSize, UErrorCode *err)
Gets the full name suitable for display for the specified locale.
int32_t uloc_getLanguage(const char *localeID, char *language, int32_t languageCapacity, UErrorCode *err)
Gets the language code for the specified locale.
int32_t uloc_countAvailable(void)
Gets the size of the all available locale list.
int32_t uloc_getVariant(const char *localeID, char *variant, int32_t variantCapacity, UErrorCode *err)
Gets the variant code for the specified locale.
int32_t uloc_setKeywordValue(const char *keywordName, const char *keywordValue, char *buffer, int32_t bufferCapacity, UErrorCode *status)
Sets or removes the value of the specified keyword.
@ ULOC_DATA_LOCALE_TYPE_LIMIT
One more than the highest normal ULocDataLocaleType value.
#define U_STABLE
This is used to declare a function as a stable public ICU C API.
const char * uloc_getISO3Country(const char *localeID)
Gets the ISO country code for the specified locale.
const char * uloc_toUnicodeLocaleKey(const char *keyword)
Converts the specified keyword (legacy key, or BCP 47 Unicode locale extension key) to the equivalent...
uint32_t uloc_getLCID(const char *localeID)
Gets the Win32 LCID value for the specified locale.
ULayoutType uloc_getLineOrientation(const char *localeId, UErrorCode *status)
Get the layout line orientation for the specified locale.
struct UEnumeration UEnumeration
structure representing an enumeration object instance
int32_t uloc_getDisplayKeywordValue(const char *locale, const char *keyword, const char *displayLocale, UChar *dest, int32_t destCapacity, UErrorCode *status)
Gets the value of the keyword suitable for display for the specified locale.
int32_t uloc_getDisplayKeyword(const char *keyword, const char *displayLocale, UChar *dest, int32_t destCapacity, UErrorCode *status)
Gets the keyword name suitable for display for the specified locale.
int32_t uloc_getLocaleForLCID(uint32_t hostID, char *locale, int32_t localeCapacity, UErrorCode *status)
Gets the ICU locale ID for the specified Win32 LCID value.
@ ULOC_REQUESTED_LOCALE
This is the requested locale.
const char * uloc_toLegacyKey(const char *keyword)
Converts the specified keyword (BCP 47 Unicode locale extension key, or legacy key) to the legacy key...
int32_t uloc_canonicalize(const char *localeID, char *name, int32_t nameCapacity, UErrorCode *err)
Gets the full name for the specified locale.
UAcceptResult
enums for the 'outResult' parameter return value
C API: String Enumeration.
const char * uloc_toUnicodeLocaleType(const char *keyword, const char *value)
Converts the specified keyword value (legacy type, or BCP 47 Unicode locale extension type) to the we...
int32_t uloc_getDisplayCountry(const char *locale, const char *displayLocale, UChar *country, int32_t countryCapacity, UErrorCode *status)
Gets the country name suitable for display for the specified locale.