Use getBundle(String baseName, Locale locale) to load resource based on Locale information


import java.util.Locale;
import java.util.ResourceBundle;

public class Main {

  public static void main(String[] args) {
    ResourceBundle bundle = ResourceBundle.getBundle("MessagesBundle", Locale.UK);
    System.out.println("Message in " + Locale.UK + ": " + bundle.getString("greeting"));

    Locale.setDefault(new Locale("in", "ID"));
    bundle = ResourceBundle.getBundle("MessagesBundle");
    System.out.println("Message in " + Locale.getDefault() + ": " + bundle.getString("greeting"));
  }
}

Example of our resource bundle files,


MessagesBundle_en_GB.properties

greeting=Hello, how are you?

MessagesBundle_in_ID.properties

greeting=Halo, apa kabar?
Home 
  Java Book 
    Essential Classes  

ResourceBundle:
  1. The ResourceBundle, ListResourceBundle, and PropertyResourceBundle Classes
  2. Use getBundle(String baseName) to load resource file
  3. Use getBundle(String baseName, Locale locale) to load resource based on Locale information
  4. getString(String key) load the value by the key