Java Internationalization

Jakob Jenkov
Last update: 2014-06-23

Java Internationalization (i18n) is Java's built-in support for making your app able to serve users in multiple different languages. In fact, internationalization covers more than just the language. It also covers formatting of numbers, adjustment to date and time etc.

Internationalization is what you do to a Java application to make it able to handle different languages, number formats etc.

Localization is what the Java application does when it adapts itself to a user with a specific language, number format, date and time etc.

Internationalization and localization are thus two sides of the same story. Your Java application needs to be internationalized to in order to be able to localize itself.

Internationalization is often abbreviated i18n. The 18 refers to the 18 characters between the first letter i, and the last letter n. Localization is similarly abbreviated as L10n.

Java 6+ Internationalization

This tutorial explains how Java internationalization works from Java 6 and forward.

Work in Progress

This Java internationalization tutorial is "work in progress", so if you spot a a missing description of a feature etc., please be patient. I'll add it when I get the time to do it. Or better yet, send me an email, so I can add it more quickly.

Feel Free to Contact Me

If you disagree with anything I write here about the Java internationalization tutorial, or just have comments, questions, etc, feel free to send me an email. You wouldn't be the first to do so. You can find my email address on the about page.

Jakob Jenkov

Featured Videos

Java ForkJoinPool

P2P Networks Introduction


Java Persistence
Close TOC
All Tutorial Trails
All Trails
Table of contents (TOC) for this tutorial trail
Trail TOC
Table of contents (TOC) for this tutorial
Page TOC
Previous tutorial in this tutorial trail
Next tutorial in this tutorial trail