Important:
This is retired content. This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.
A version of this page is also available for
4/8/2010

An LCTYPE constant is a constant that specifies a particular piece of locale information.

All values are null-terminated Unicode™ strings. If no maximum length is indicated, the strings may vary in length.

The following are locale, or LCTYPE, constants.

LOCALE_ILANGUAGE

Language identifier indicating the language. The maximum number of characters allowed for this string is 5.

LOCALE_SLANGUAGE

Full localized name of the language. If the locale is the same as the system locale, GetLocaleInforeturns this constant. If the locale is not equal to the system locale, GetLocaleInforeturns the LOCALE_SENGLANGUAGE constant.

LOCALE_SENGLANGUAGE

Full English name of the language from the International Organization for Standardization (ISO) Standard 639. This is always restricted to characters that are able to be mapped into the ASCII 127-character subset.

LOCALE_SABBREVLANGNAME

Abbreviated name of the language, created by taking the 2-letter language abbreviation from the ISO Standard 639 and adding a third letter, as appropriate, to indicate the sublanguage.

LOCALE_SNATIVELANGNAME

Native name of the language.

LOCALE_ICOUNTRY

Country/region code, based on international phone codes, also referred to as IBM country/region codes. The maximum number of characters allowed for this string is 6.

LOCALE_SCOUNTRY

Full localized name of the country/region. If the locale is the same as the system locale, GetLocaleInforeturns the LOCALE_SNATIVECTRYNAME constant. If the locale is not equal to the system locale, GetLocaleInforeturns the LOCALE_SENGCOUNTRY constant.

LOCALE_SENGCOUNTRY

Full English name of the country/region. This is always restricted to characters that are able to be mapped into the ASCII 127-character subset.

LOCALE_SABBREVCTRYNAME

Abbreviated name of the country/region from the ISO Standard 3166.

LOCALE_SNATIVECTRYNAME

Native name of the country/region.

LOCALE_IDEFAULTLANGUAGE

Language identifier for the principal language spoken in this locale. This is provided so that partially specified locales can be completed with default values. The maximum number of characters allowed for this string is 5.

LOCALE_IDEFAULTCOUNTRY

Country/region code for the principal country/region in this locale. This is provided so that partially specified locales can be completed with default values. The maximum number of characters allowed for this string is 6.

LOCALE_IDEFAULTANSICODEPAGE

American National Standards Institute (ANSI) code page associated with this locale. The maximum number of characters allowed for this string is 6.

LOCALE_IDEFAULTCODEPAGE

Original equipment manufacturer (OEM) code page associated with the country/region. The maximum number of characters allowed for this string is 6.

LOCALE_SLIST

Character(s) used to separate list items. For example, a comma is used in many locales.

LOCALE_IMEASURE

System of measurement. This value is 0 if the metric system (Systéme International d'Unités, or S.I.) is used and 1 if the U.S. system is used. The maximum number of characters allowed for this string is 2.

LOCALE_SDECIMAL

Character(s) used as the decimal separator.

LOCALE_STHOUSAND

Character(s) used to separate groups of digits to the left of the decimal.

LOCALE_SGROUPING

Sizes for each group of digits to the left of the decimal. An explicit size is needed for each group; semicolons separate sizes. If the last value is zero, the preceding value is repeated. For example, to group thousands, specify 3;0. Indic locales group the first thousand and then group by hundreds; for example 12,34,56,789 is represented by 3;2;0.

LOCALE_IDIGITS

Number of fractional digits. The maximum number of characters allowed for this string is 3.

LOCALE_IDIGITSUBSTITUTION

Determines the shape of the digits. For example, Arabic, Thai, and Indic digits have classical shapes that are different from those of western digits. The specifier can be one of these values.

Value Description

0

Context. The shape depends on the previous text in the same output.

1

None/Arabic. Gives full Unicode compatibility.

2

Native. National shapes determined by LOCALE_SNATIVEDIGITS.

LOCALE_ILZERO

Specification for leading zeros in decimal fields. The maximum number of characters allowed for this string is 2. The specification is one of the following values:

Value Description

0

No leading zeros

1

Leading zeros

LOCALE_INEGNUMBER

Negative number mode. The mode is one of these values:

Value Description

0

(1.1)

1

1.1

2

1.1

3

1.1

4

1.1

LOCALE_SNATIVEDIGITS

Native equivalents to ASCII 0 through 9.

LOCALE_SCURRENCY

String used as the local monetary symbol.

LOCALE_SINTLSYMBOL

Three characters of the international monetary symbol specified in ISO 4217, "Codes for the Representation of Currencies and Funds," followed by the character separating this string from the amount.

LOCALE_SMONDECIMALSEP

Character(s) used as the monetary decimal separator.

LOCALE_SMONTHOUSANDSEP

Character(s) used as the monetary separator between groups of digits to the left of the decimal.

LOCALE_SMONGROUPING

Sizes for each group of monetary digits to the left of the decimal. An explicit size is needed for each group; semicolons separate sizes. If the last value is zero, the preceding value is repeated. For example, to group thousands, specify 3;0. Indic languages group the first thousand and then group by hundreds; for example, 12,34,56,789is represented by 3;2;0. The maximum number of characters allowed for this string is four.

LOCALE_ICURRDIGITS

Number of fractional digits for the local monetary format. The maximum number of characters allowed for this string is 9.

LOCALE_IINTLCURRDIGITS

Number of fractional digits for the international monetary format. The maximum number of characters allowed for this string is 3.

LOCALE_ICURRENCY

Positive currency mode. The maximum number of characters allowed for this string is 2. The mode is one of the following values:

Value Description

0

Prefix, no separation

1

Suffix, no separation

2

Prefix, 1-char. separation

3

Suffix, 1-char. separation

LOCALE_INEGCURR

Negative currency mode. The maximum number of characters allowed for this string is 3. The mode is one of the following values:

Value Example

0

($1.1)

1

$1.1

2

$1.1

3

$1.1

4

(1.1$)

5

1.1$

6

1.1$

7

1.1$

8

1.1 $ (space before $)

9

$ 1.1 (space after $)

10

1.1 $ (space before $)

11

$ 1.1 (space after $)

12

$ 1.1 (space after $)

13

1.1 $ (space before $)

14

($ 1.1) (space after $)

15

(1.1 $) (space before $)

LOCALE_SDATE

Character(s) for the date separator.

LOCALE_STIME

Character(s) for the time separator.

LOCALE_STIMEFORMAT

Time formatting strings for this locale. The string can consist of a combination of the hour, minute, and second format pictures defined in the Hour, Minute, and Second Format Pictures table in National Language Support Constants.

LOCALE_SYEARMONTH

The Year/Month formatting string for the locale. This string shows the proper format for a date string that contains only the year and the month.

LOCALE_SSHORTDATE

Short date formatting string for this locale. The string can consist of a combination of day, month, and year format pictures defined in Day, Month, Year, and Era Format Pictures table in National Language Support Constants.

LOCALE_SLONGDATE

Long date formatting string for this locale. The string can consist of a combination of day, month, and year format pictures defined in the Day, Month, Year, and Era Format Pictures table in National Language Support Constantsand any string of characters enclosed in single quotes. Characters in single quotes remain as given.

LOCALE_IDATE

Short date format-ordering specification. The maximum number of characters allowed for this string is 2. The specification is one of the following values:

Value Description

0

Month-Day-Year

1

Day-Month-Year

2

Year-Month-Day

LOCALE_ILDATE

Long date format-ordering specification. The maximum number of characters allowed for this string is 2. The specification is one of the following values:

Value Description

0

Month-Day-Year

1

Day-Month-Year

2

Year-Month-Day

LOCALE_ITIME

Time format specification. The maximum number of characters allowed for this string is 2. The specification is one of the following values:

Value Description

0

AM / PM 12-hour format

1

24-hour format

LOCALE_ICENTURY

Specification for full 4-digit century. The maximum number of characters allowed for this string is 2. The specification is one of the following values:

Value Description

0

Abbreviated 2-digit century

1

Full 4-digit century

LOCALE_ITLZERO

Specification for leading zeros in time fields. The maximum number of characters allowed for this string is 2. The specification is one of the following values:

Value Description

0

No leading zeros for hours

1

Leading zeros for hours

LOCALE_IDAYLZERO

Specification for leading zeros in day fields. The maximum number of characters allowed for this string is 2. The specification is one of the following values:

Value Description

0

No leading zeros for days

1

Leading zeros for days

LOCALE_IMONLZERO

Specification for leading zeros in month fields. The maximum number of characters allowed for this string is 2. The specification is one of the following values:

Value Description

0

No leading zeros for months

1

Leading zeros for months

LOCALE_S1159

String for the AM designator.

LOCALE_S2359

String for the PM designator.

LOCALE_ICALENDARTYPE

Current calendar type. This type is one of these values:

Value Description

1

Gregorian (as in United States)

2

Gregorian (English strings always)

3

Era: Year of the Emperor (Japan)

4

Era: Year based on the Chinese calendar

5

Tangun Era (Korea)

6

Hijri (Arabic lunar)

7

Thai

8

Hebrew (Lunar)

9

Gregorian Middle East French calendar

10

Gregorian Arabic calendar

11

Gregorian Transliterated English calendar

12

Gregorian Transliterated French calendar

LOCALE_IOPTIONALCALENDAR

Additional calendar types. This is a zero-separated list of one or more of these calendars type values:

Value Description

0

No additional types valid

1

Gregorian (localized)

2

Gregorian (English strings always)

3

Year of the Emperor (Japan)

4

Taiwan Calendar

5

Tangun Era (Korea)

6

Hijri (Arabic lunar)

7

Thai

8

Hebrew (Lunar)

9

Gregorian Middle East French calendar

10

Gregorian Arabic calendar

11

Gregorian-transliterated English calendar

12

Gregorian-transliterated French calendar

LOCALE_IFIRSTDAYOFWEEK

Specification for the first day in a week. The specification is one of these values:

Value Description

0

LOCALE_SDAYNAME1

1

LOCALE_SDAYNAME2

2

LOCALE_SDAYNAME3

3

LOCALE_SDAYNAME4

4

LOCALE_SDAYNAME5

5

LOCALE_SDAYNAME6

6

LOCALE_SDAYNAME7

LOCALE_IFIRSTWEEKOFYEAR

Specification for the first week of the year. The specification is one of these values:

Value Description

0

Week containing 1/1 is the first week of that year.

1

First full week following 1/1 is the first week of that year.

2

First week containing at least 4 days is the first week of that year.

LOCALE_SDAYNAME1

Native long name for Monday.

LOCALE_SDAYNAME2

Native long name for Tuesday.

LOCALE_SDAYNAME3

Native long name for Wednesday.

LOCALE_SDAYNAME4

Native long name for Thursday.

LOCALE_SDAYNAME5

Native long name for Friday.

LOCALE_SDAYNAME6

Native long name for Saturday.

LOCALE_SDAYNAME7

Native long name for Sunday.

LOCALE_SABBREVDAYNAME1

Native abbreviated name for Monday.

LOCALE_SABBREVDAYNAME2

Native abbreviated name for Tuesday.

LOCALE_SABBREVDAYNAME3

Native abbreviated name for Wednesday.

LOCALE_SABBREVDAYNAME4

Native abbreviated name for Thursday.

LOCALE_SABBREVDAYNAME5

Native abbreviated name for Friday.

LOCALE_SABBREVDAYNAME6

Native abbreviated name for Saturday.

LOCALE_SABBREVDAYNAME7

Native abbreviated name for Sunday.

LOCALE_SMONTHNAME1

Native long name for January.

LOCALE_SMONTHNAME2

Native long name for February.

LOCALE_SMONTHNAME3

Native long name for March.

LOCALE_SMONTHNAME4

Native long name for April.

LOCALE_SMONTHNAME5

Native long name for May.

LOCALE_SMONTHNAME6

Native long name for June.

LOCALE_SMONTHNAME7

Native long name for July.

LOCALE_SMONTHNAME8

Native long name for August.

LOCALE_SMONTHNAME9

Native long name for September.

LOCALE_SMONTHNAME10

Native long name for October.

LOCALE_SMONTHNAME11

Native long name for November.

LOCALE_SMONTHNAME12

Native long name for December.

LOCALE_SMONTHNAME13

Native name for 13th month, if exists.

LOCALE_SABBREVMONTHNAME1

Native abbreviated name for January.

LOCALE_SABBREVMONTHNAME2

Native abbreviated name for February.

LOCALE_SABBREVMONTHNAME3

Native abbreviated name for March.

LOCALE_SABBREVMONTHNAME4

Native abbreviated name for April.

LOCALE_SABBREVMONTHNAME5

Native abbreviated name for May.

LOCALE_SABBREVMONTHNAME6

Native abbreviated name for June.

LOCALE_SABBREVMONTHNAME7

Native abbreviated name for July.

LOCALE_SABBREVMONTHNAME8

Native abbreviated name for August.

LOCALE_SABBREVMONTHNAME9

Native abbreviated name for September.

LOCALE_SABBREVMONTHNAME10

Native abbreviated name for October.

LOCALE_SABBREVMONTHNAME11

Native abbreviated name for November.

LOCALE_SABBREVMONTHNAME12

Native abbreviated name for December.

LOCALE_SABBREVMONTHNAME13

Native abbreviated name for 13th month, if exists.

LOCALE_SPOSITIVESIGN

String value for the positive sign.

LOCALE_SNEGATIVESIGN

String value for the negative sign.

LOCALE_IPOSSIGNPOSN

Formatting index for positive values. The maximum number of characters allowed for this string is 2. The index is one of the following values:

Value Description

0

Parentheses surround the amount and the monetary symbol.

1

The sign string precedes the amount and the monetary symbol.

2

The sign string succeeds the amount and the monetary symbol.

3

The sign string immediately precedes the monetary symbol.

4

The sign string immediately succeeds the monetary symbol.

LOCALE_INEGSIGNPOSN

Formatting index for the negative sign in currency values. The maximum number of characters allowed for this string is two. The following table shows values for this index.

Value Description

0

Parentheses surround the amount and the monetary symbol.

1

The sign precedes the number.

2

The sign follows the number.

3

The sign precedes the monetary symbol.

4

The sign follows the monetary symbol.

LOCALE_IPOSSYMPRECEDES

Position of monetary symbol in a positive monetary value. This value is 1 if the monetary symbol precedes the positive amount, 0 if it follows it. The maximum number of characters allowed for this string is 2.

LOCALE_IPOSSEPBYSPACE

Separation of monetary symbol in a positive monetary value. This value is 1 if the monetary symbol is separated by a space from a positive amount, 0 if it is not. The maximum number of characters allowed for this string is 2.

LOCALE_INEGSYMPRECEDES

Position of monetary symbol in a negative monetary value. This value is 1 if the monetary symbol precedes the negative amount, 0 if it follows it. The maximum number of characters allowed for this string is 2.

LOCALE_INEGSEPBYSPACE

Separation of monetary symbol in a negative monetary value. This value is 1 if the monetary symbol is separated by a space from the negative amount, 0 if it is not. The maximum number of characters allowed for this string is 2.

LOCALE_IPAPERSIZE

Default paper size associated with the locale. The following table shows the values for this specifier.

Value Description

1

US Letter

5

US Legal

8

A3

9

A4

LOCALE_NOUSEROVERRIDE

You can use the OR operator with any other LCTYPEconstant in a call to the GetLocaleInfofunction. This always causes the function to bypass any user overrides, and return the system default value for the other LCTYPEspecified in the function call, based on the given LCID.