Java ResourceBundle.Control getControl() Method



Description

The Java ResourceBundle.Control getControl(List<String> formats) method returns a ResourceBundle.Control in which the getFormats method returns the specified formats.

Declaration

Following is the declaration for java.util.Control.getControl() method

public static final ResourceBundle.Control getControl(List<String> formats)

Parameters

formats − the formats to be returned by the ResourceBundle.Control.getFormats method

Return Value

This method returns a ResourceBundle.Control supporting the specified formats

Exception

  • NullPointerException − if formats is null

  • IllegalArgumentException − if formats is unknown

Getting Control from a ResourceBundle Control of US Locale Example

The following example shows the usage of Java ResourceBundle.Control getControl() method to get the ResourceBundle.Control object. We've created a resource bundle control with FORMAT_DEFAULT using getControl() method. Then candidate locales of US Locale for the corresponding hello_en_US.properties file are printed using getCandidateLocales() method.

package com.tutorialspoint;

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

public class ResourceBundleControlDemo {
   public static void main(String[] args) {

      // create a new ResourceBundle.Control with default format
      ResourceBundle.Control rbc = ResourceBundle.Control.getControl(Control.FORMAT_DEFAULT);

      // print the CandidateLocales
      System.out.println(rbc.getCandidateLocales("hello", Locale.US));
   }
}

Output

Assuming we have a resource file hello_en_US.properties available in your CLASSPATH, with the following content. This file will be used as an input for our example program −

hello = Hello World!

Let us compile and run the above program, this will produce the following result −

[en_US, en, ]

Getting Control from a ResourceBundle Control of French Locale Example

The following example shows the usage of Java ResourceBundle.Control getControl() method to get the ResourceBundle.Control object. We've created a resource bundle control with FORMAT_DEFAULT using getControl() method. Then candidate locales of French Locale for the corresponding hello_fr_FR.properties file are printed using getCandidateLocales() method.

package com.tutorialspoint;

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

public class ResourceBundleControlDemo {
   public static void main(String[] args) {

      // create a new ResourceBundle.Control with default format
      ResourceBundle.Control rbc = ResourceBundle.Control.getControl(Control.FORMAT_DEFAULT);

      // print the CandidateLocales
      System.out.println(rbc.getCandidateLocales("hello", Locale.FRANCE));
   }
}

Output

Assuming we have a resource file hello_fr_FR.properties available in your CLASSPATH, with the following content. This file will be used as an input for our example program −

hello = Bonjour le monde!

Let us compile and run the above program, this will produce the following result −

[fr_FR, fr, ]

Getting Control from a ResourceBundle Control of German Locale Example

The following example shows the usage of Java ResourceBundle.Control getControl() method to get the ResourceBundle.Control object. We've created a resource bundle control with FORMAT_DEFAULT using getControl() method. Then candidate locales of German Locale for the corresponding hello_de_DE.properties file are printed using getCandidateLocales() method.

package com.tutorialspoint;

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

public class ResourceBundleControlDemo {
   public static void main(String[] args) {

      // create a new ResourceBundle.Control with default format
      ResourceBundle.Control rbc = ResourceBundle.Control.getControl(Control.FORMAT_DEFAULT);

      // print the CandidateLocales
      System.out.println(rbc.getCandidateLocales("hello", Locale.GERMANY));
   }
}

Output

Assuming we have a resource file hello_de_DE.properties available in your CLASSPATH, with the following content. This file will be used as an input for our example program −

hello = Hallo Welt!

Let us compile and run the above program, this will produce the following result −

[de_DE, de, ]
java_util_resourcebundle_control.htm
Advertisements