Browse DevX
Sign up for e-mail newsletters from DevX

Tip of the Day
Language: Java
Expertise: Intermediate
Apr 20, 1999



Building the Right Environment to Support AI, Machine Learning and Deep Learning

Specifying the Locale

Closely related to the issue of internationalization is the java.util.Locale class. An instance of Locale represents a geographic, political, or cultural region, and may or may not correspond to a physical or political border. A default Locale is initially selected by Java based on the machine's settings, but the default can be changed using the static setDefault() method in the Locale class. Many methods, such as those responsible for formatting date and time values, produce results that vary based on the Locale used. These methods typically allow the user either to explicitly specify the Locale to use or to omit it, in which case the default Locale will be used.

You can construct your own Locale instances, although you'll typically want to use one that's already defined. Some static instances representing commonly used locales are available in the Locale class, such as US (United States English), CANADA (Canadian English), CANADA_FRENCH (Canadian French), etc. In this code, the current date value is displayed in three formats: the user's default Locale format, the US Locale format, and the CANADA Locale format:

Locale loc;
DateFormat df;
int style = DateFormat.SHORT;
Date curdate = new Date();
df = DateFormat.getDateInstance(style);
loc = Locale.US;
df = DateFormat.getDateInstance(style, loc);
loc = Locale.CANADA;
df = DateFormat.getDateInstance(style, loc);
The first line of output will vary based on the default locale at the time the code is run. However, the second line (US locale) will always use the mm/dd/yy format, while the third line (CANADA locale) will use dd/mm/yy.
Brett Spell
Comment and Contribute






(Maximum characters: 1200). You have 1200 characters left.



Thanks for your registration, follow us on our social networks to keep up-to-date