Programming Tutorials

Aspects of Internationalization in Java

By: Grenfel in Java Tutorials on 2007-09-17  

Internationalization in Java is the process of designing and developing software that can be adapted to different languages and cultural settings. It involves several aspects such as messaging, formatting policy, calendar and time zone policy, string collation policy, and general UI features.

  1. Messaging: One of the key aspects of internationalization is the ability to provide messages in different languages. In Java, this can be achieved using resource bundles that store messages in different languages. The appropriate bundle is loaded based on the user's locale.

  2. Formatting policy: Another important aspect of internationalization is formatting policy. This includes formatting numbers, currencies, dates, and times in a way that is appropriate for the user's locale. In Java, this can be achieved using classes such as NumberFormat, DateFormat, and Currency.

  3. Calendar and time zone policy: Different cultures have different calendar systems and time zone policies. Java provides classes such as Calendar and TimeZone that can be used to work with different calendar systems and time zones.

  4. String collation policy: String collation is the process of determining the order of strings in a sorted list. Different cultures have different collation policies. Java provides the Collator class to work with different string collation policies.

  5. General UI features: Finally, internationalization also involves general UI features such as fonts, layouts, and colors. In Java, the look and feel of the UI can be customized based on the user's locale using the Locale class.

Here is an example of how to set the locale and format a number in Java:

import java.text.NumberFormat;
import java.util.Locale;

public class Main {
    public static void main(String[] args) {
        // Create a Locale for French
        Locale locale = new Locale("fr", "FR");

        // Format a number for the French locale
        double number = 12345.6789;
        NumberFormat numberFormat = NumberFormat.getNumberInstance(locale);
        String formattedNumber = numberFormat.format(number);

        // Print the formatted number

In this example, we create a Locale for French and use it to format a number. The NumberFormat class is used to format the number in the appropriate way for the French locale. The formatted number is then printed to the console.

Add Comment

* Required information


No comments yet. Be the first!

Most Viewed Articles (in Java )

Latest Articles (in Java)