Go to main content

International Language Environments Guide for Oracle® Solaris 11.4

Exit Print View

Updated: February 2022
 
 

Behavior Affected by Locales

Different cultures often use different conventions to format numbers, to write the date and time, to delimit words and phrases, or to quote written and spoken material. A locale determines the way in which the following operations, files, formats, and expressions are handled for different regions:

  • Encoding and processing of text data

  • Language identification and encoding of resource files

  • Rendering and layout of text strings

  • Interchange of text between clients

  • Input method selection to meet the codeset and text processing requirements of the chosen script

  • Fonts and icon files that are culturally specific

  • User Interface Definition (UID) files

  • Date and time formats

  • Numeric formats

  • Monetary formats

  • Collation order

  • Regular expression handling

  • Format for informative and diagnostic messages and interactive responses

The Oracle Solaris environment separates language and culture-dependent information from the application and saves the information outside the application. This method eliminates the need to translate, rewrite, or recompile the application for each market. The only requirement to enter a new market is to localize the external information to the local language and customs.

The following sections describe the differences that exist for locale categories and other differences between languages.

Time Formats

The following table shows some of the ways in which different locales write 11:59 P.M. You can display the time format on your current locale by issuing the following command:

$ date +%X
Table 2  International Time Formats
Locale
Description
Time Format
C
-
23:59:00
en_US.UTF-8
English, U.S.A.
11:59:00 PM
es_US.UTF-8
Spanish, U.S.A.
11:59:00 p.m.
mr_IN.UTF-8
Marathi, India
11-59-00 pm
sq_AL.ISO8859-2
Albanian, Albania
11.59.00.MD
ja_JP.UTF-8
Japanese, Japan
23時59分00秒
ko_KR.UTF-8
Korean, Korea
오후11시 59분 00초
zh_CN.UTF-8
Simplified Chinese, China
23时59分00秒

Time can be represented by both a 12-hour clock and a 24-hour clock. The hour and minute separator can be either a colon (:) or a period (.) or a dash (-).

Time zone splits occur between and within countries. Although a time zone can be described in terms of the number of hours it is ahead of, or behind, Coordinated Universal Time, UTC (or Greenwich Mean Time, GMT), this number is not always an integer. For example, Newfoundland is in a time zone that is half an hour different from the adjacent time zone.

Daylight Saving Time (DST) starts and ends on dates that can vary from country to country. Many countries do not implement DST at all. Additionally, Daylight Saving Time can vary within a time zone. In the U.S. for example, the implementation is a state decision.

Date Formats

The following table shows some of the date formats used around the world. Variations can exist even within a country. You can display the date format on your current locale by issuing the following command:

$ date +%x
Table 3  International Date Formats
Locale
Description
Date Format
C
-
07/16/11
en_CA.UTF-8
English, Canada
7/11/16
en_GB.UTF-8
English, United Kingdom
7/16/11
fi_FI.UTF-8
Finnish, Finland
7/16/11
ja_JP.UTF-8
Japanese, Japan
2011年07月16日
ko_KR.UTF-8
Korean, Korea
11. 07. 16.
zh_TW.UTF-8
Traditional Chinese, Taiwan
11年07月16日

Number Formats

There are various number formats specified by locales, for example Great Britain and the United States use a period to indicate the decimal place. Many other countries use a comma. The decimal separator is also called the radix character. Likewise, while Great Britain and the United States use a comma to separate groups of thousands, many other countries use a period, and some countries separate thousands groups with a thin space (Unicode character U+2009).

Data files containing locale-specific formats are frequently misinterpreted when transferred to a system in a different locale. For example, a file containing numbers in a French format is not useful to a British-specific program.

The following table shows some commonly used numeric formats. The information on numeric delimiters for current locale can be obtained by issuing the following command:

$ locale -ck LC_NUMERIC
Table 4  International Numeric Conventions
Locale
Description
Number Format
C
-
4294967.00
ar_SA.UTF-8
Arabic, Saudi Arabia
4967967,00
cs_CZ.UTF-8
Czech, Czech Republic
4 294 967,00
de_DE.UTF-8
German, Germany
4.294.967,00
de_CH.UTF-8
German, Switzerland
4'294'967.00
en_US.UTF-8
English, U.S.A.
4,294,967.00
hi_IN.UTF-8
Hindi, India
42,94,967.00

Note - No particular locale conventions exist that specify how to separate numbers in a list.

International Monetary Formats

Currency units, presentation order, and local and international symbols for currency vary greatly around the world. The monetary formats for current locale can be obtained by issuing the following command:

$ locale -ck LC_MONETARY

The following table shows monetary formats in some countries.

Table 5  International Monetary Conventions
Locale
Currency
Example
C
-
1234.56
da_DK.UTF-8
Danish krone (kr)
1.234,56kr
da_DK.ISO8859-15@euro
Euro (€)
1.234,56€
en_GB.UTF-8
Pound (£)
£1,234.56
en_US.UTF-8
United States dollar ($)
$1,234.56
fr_FR.UTF-8
Euro (€)
1 234,56€
ja_JP.UTF-8
Japanese yen (¥)
¥1,235
th_TH.UTF-8
Thai Baht (BHT)
THB1,234.56
zh_CN.UTF-8
Chinese yuan (¥)
¥1,234.56

The Euro currency is supported in all UTF-8 locales. Legacy locales based on the ISO8859-15 code set are also available and exist with @euro (e.g. da_DK.ISO8859-15@euro) variants for countries which have not adopted Euro as their currency.