National Language Support Functions

NLS supports the functions defined in the following table.

Function Description
AdjustCalendarDate Deprecated. Adjusts a date by a specified number of years, months, weeks or days.
CompareString Compares two character strings, for a locale specified by identifier.
CompareStringEx Compares two Unicode (wide character) strings, for a locale specified by name.
CompareStringOrdinal Compares two Unicode strings to test binary equivalence.
ConvertCalDateTimeToSystemTime Deprecated. Converts a specified CALDATETIME structure to a SYSTEMTIME structure.
ConvertDefaultLocale Converts a default locale value to an actual locale identifier.
ConvertSystemTimeToCalDateTime Deprecated. Converts a specified SYSTEMTIME structure to a CALDATETIME structure.
DownlevelGetLocaleScripts Provides a list of scripts for the specified locale.
DownlevelGetParentLocaleLCID Retrieves the locale identifier for the parent of the supplied locale.
DownlevelGetParentLocaleName Retrieves the locale name for the parent of the supplied locale.
DownlevelGetStringScripts Provides a list of scripts used in the specified Unicode string.
DownlevelLCIDToLocaleName Converts a locale identifier to a locale name.
DownlevelLocaleNameToLCID Converts a locale name to a locale identifier that can be used to get information from the operating system.
DownlevelVerifyScripts Compares two enumerated lists of scripts.
EnumCalendarInfo Enumerates calendar information for a specified locale.
EnumCalendarInfoEx Enumerates calendar information for a locale specified by identifier.
EnumCalendarInfoExEx Enumerates calendar information for a locale specified by name.
EnumCalendarInfoProc An application-defined callback function that processes enumerated calendar information provided by the EnumCalendarInfo function.
EnumCalendarInfoProcEx An application-defined callback function that processes enumerated calendar information provided by the EnumCalendarInfoEx function.
EnumCalendarInfoProcExEx An application-defined callback function that processes enumerated calendar information provided by the EnumCalendarInfoExEx function.
EnumCodePagesProc An application-defined callback function that processes enumerated code page information provided by the EnumSystemCodePages function.
EnumDateFormats Enumerates the long date, short date, or year/month formats that are available for a specified locale.
EnumDateFormatsEx Enumerates the long date, short date, or year/month formats that are available for a specified locale.
EnumDateFormatsExEx Enumerates the long date, short date, or year/month formats that are available for a locale specified by name.
EnumDateFormatsProc An application-defined callback function that processes date format information provided by the EnumDateFormats function.
EnumDateFormatsProcEx An application-defined callback function that processes date format information provided by the EnumDateFormatsEx function.
EnumDateFormatsProcExEx An application-defined callback function that processes date format information provided by the EnumDateFormatsExEx function.
EnumGeoInfoProc An application-defined callback function that processes enumerated geographical location information provided by the EnumSystemGeoID function.
EnumLanguageGroupLocales Enumerates the locales in a specified language group.
EnumLanguageGroupLocalesProc An application-defined callback function that processes enumerated language group locale information provided by the EnumLanguageGroupLocales function.
EnumLanguageGroupsProc An application-defined callback function that processes enumerated language group information provided by the EnumSystemLanguageGroups function.
EnumLocalesProc An application-defined callback function that processes enumerated locale information provided by the EnumSystemLocales function.
EnumLocalesProcEx An application-defined callback function that processes enumerated locale information provided by the EnumSystemLocalesEx function.
EnumSystemCodePages Enumerates the code pages that are either installed on or supported by an operating system.
EnumSystemGeoID Enumerates the geographical location identifiers (type GEOID) that are available on the operating system.
EnumSystemGeoNames Enumerates the two-letter International Organization for Standardization (ISO) 3166-1 codes or numeric United Nations (UN) Series M, Number 49 (M.49) codes for geographical locations that are available on the operating system.
EnumSystemLanguageGroups Enumerates the language groups that are either installed on or supported by an operating system.
EnumSystemLocales Enumerates the locales that are either installed on or supported by an operating system.
EnumSystemLocalesEx Enumerates the locales that are either installed on or supported by an operating system.
EnumTimeFormats Enumerates the time formats that are available for a locale specified by identifier.
EnumTimeFormatsEx Enumerates the time formats that are available for a locale specified by name.
EnumTimeFormatsProc An application-defined callback function that processes enumerated time format information provided by the EnumTimeFormats function.
EnumTimeFormatsProcEx An application-defined callback function that processes enumerated time format information provided by the EnumTimeFormatsEx function.
FindNLSString Locates a Unicode string (wide characters) or its equivalent in another Unicode string for a locale specified by identifier.
FindNLSStringEx Locates a Unicode string (wide characters) or its equivalent in another Unicode string for a locale specified by identifier.
FindStringOrdinal Locates a Unicode string (wide characters) in another Unicode string for a non-linguistic comparison.
FoldString Maps one Unicode string to another, performing the specified transformation.
Geo_EnumNameProc An application-defined callback function that processes enumerated geographical location information provided by the EnumSystemGeoNames function.
GetACP Retrieves the current Windows ANSI code page identifier for the system.
GetCalendarDateFormatEx Deprecated. Retrieves a properly formatted date string for the specified locale using the specified date.
GetCalendarInfo Retrieves information about a calendar for a locale specified by identifier.
GetCalendarInfoEx Retrieves information about a calendar for a locale specified by name.
GetCalendarSupportedDateRange Deprecated. Gets the supported date range for a specified calendar.
GetCPInfo Retrieves information about any valid installed or available code page.
GetCPInfoEx Retrieves information about any valid installed or available code page.
GetCurrencyFormat Formats a number string as a currency string for a locale specified by identifier.
GetCurrencyFormatEx Formats a number string as a currency string for a locale specified by name.
GetDateFormat Formats a date as a date string for a locale specified by identifier.
GetDateFormatEx Formats a date as a date string for a locale specified by name.
GetDurationFormat Formats a duration of time as a time string for a locale specified by identifier.
GetDurationFormatEx Formats a duration of time as a time string for a locale specified by name.
GetGeoInfo Gets information about a specified geographical location.
GetGeoInfoEx Retrieves information about a geographic location that you specify by using a two-letter ISO 3166-1 code or numeric UN M.49 code.
GetLocaleInfo Retrieves information about a locale specified by identifier.
GetLocaleInfoEx Retrieves information about a locale specified by name.
GetNLSVersion Gets information about the current version of a specified NLS capability for a locale specified by identifier.
GetNLSVersionEx Gets information about the current version of a specified NLS capability for a locale specified by name.
GetNumberFormat Formats a number string as a number string customized for a locale specified by identifier.
GetNumberFormatEx Formats a number string as a number string customized for a locale specified by name.
GetOEMCP Retrieves the current original equipment manufacturer (OEM) code page identifier for the operating system.
GetStringScripts Provides a list of scripts used in the specified string.
GetStringTypeA Deprecated. Retrieves character type information for the characters in the specified ANSI source string.
GetStringTypeEx Retrieves character type information for the characters in the specified source string.
GetStringTypeW Retrieves character type information for the characters in the specified Unicode source string.
GetSystemDefaultLangID Returns the language identifier for the system locale.
GetSystemDefaultLCID Returns the locale identifier for the system locale.
GetSystemDefaultLocaleName Retrieves the system default locale name.
GetThreadLocale Returns the locale identifier of the current locale for the calling thread.
GetTimeFormat Formats time as a time string for a locale specified by identifier.
GetTimeFormatEx Formats time as a time string for a locale specified by name.
GetUserDefaultGeoName Retrieves the two-letter ISO 3166-1 code or numeric UN M.49 code for the default geographical location of the user.
GetUserDefaultLangID Returns the language identifier for the current user locale.
GetUserDefaultLCID Returns the locale identifier for the user default locale.
GetUserDefaultLocaleName Retrieves the user default locale name.
GetUserGeoID Retrieves information about the geographical location of the user.
IdnToAscii Converts an internationalized domain name (IDN) or other internationalized label to a Unicode (wide character) representation of the ASCII string that represents the name in the Punycode transfer encoding syntax.
IdnToNameprepUnicode Converts an internationalized domain name (IDN) or another internationalized label to the NamePrep form specified by Network Working Group RFC 3491, but does not perform the additional conversion to Punycode.
IdnToUnicode Converts the Punycode form of an internationalized domain name (IDN) or another internationalized label to the normal Unicode UTF-16 encoding syntax.
IsCalendarLeapYear Deprecated. Identifies whether the specified year is a leap year within the given era for the specific calendar.
IsNLSDefinedString Determines if each character in a string has a defined result for a specified NLS capability.
IsNormalizedString Verifies that a string is normalized according to Unicode 4.0 TR#15.
IsValidCodePage Determines if a specified code page is valid.
IsValidLanguageGroup Determines if a language group is installed or supported on the operating system.
IsValidLocale Determines if the specified locale is installed or supported on the operating system.
IsValidLocaleName Determines if the specified locale name is valid for a locale that is installed or supported on the operating system.
IsValidNLSVersion Determines if the NLS version is valid for a given NLS function.
LCIDToLocaleName Converts a locale identifier to a locale name.
LCMapString For a locale specified by identifier, maps one input character string to another using a specified transformation, or generates a sort key for the input string.
LCMapStringEx For a locale specified by name, maps one input character string to another using a specified transformation, or generates a sort key for the input string.
LoadStringByReference Unsupported. This function may be altered or unavailable. Instead, use SHLoadIndirectString.
LocaleNameToLCID Converts a locale name to locale identifier.
NormalizeString Normalizes characters of a text string according to Unicode 4.0 TR#15.
NotifyUILanguageChange Unsupported. This function may be altered or unavailable.
ResolveLocaleName Finds a possible locale name match for the supplied name.
RtlIsValidLocaleName Determines if a specified locale is installed or supported on the operating system.
SetCalendarInfo Sets an item of locale information for a calendar.
SetLocaleInfo Sets an item of information in the user override portion of the current locale.
SetThreadLocale Sets the current locale of the calling thread.
SetUserGeoID Sets the geographical location identifier for the user.
SetUserGeoName Sets the geographic location for the current user to the specified two-letter ISO 3166-1 code or numeric UN M.49 code.
UpdateCalendarDayOfWeek Gets the day of week that corresponds with a specified day and populates the DayOfWeek field in the given CALDATETIME structure.
VerifyScripts Compares two enumerated lists of scripts.

 

Note

Beginning in Windows 8: If your app passes language tags to any of these functions from the Windows.Globalization namespace, it must first convert the tags by calling ResolveLocaleName.