Re: Locale.getDefault bug in JDK 1.7
<sscce source="tryout/Localizer.java">
package tryout;
import java.util.Locale;
/**
* Try out Locale tricks.
* Invocations to try:
* java tryout.Localizer
* java -Duser.language=fr tryout.Localizer
* java -Duser.language=fr -Duser.country=CA tryout.Localizer
*/
public class Localizer {
/** main method.
* @param args String [] arguments.
*/
public static void main(String [] args) {
System.out.println("");
System.out.println("user.language = " + System.getProperty("user.language"));
System.out.println(" user.country = " + System.getProperty("user.country"));
System.out.println(" user.variant = " + System.getProperty("user.variant"));
System.out.println("");
System.out.println("default");
display(Locale.getDefault());
System.out.println("");
System.out.println("Set default to CANADA");
Locale.setDefault(Locale.CANADA);
display(Locale.getDefault());
System.out.println("");
System.out.println("Set default to FRANCE");
Locale.setDefault(Locale.FRANCE);
display(Locale.getDefault());
System.out.println("");
System.out.println("Set default to CANADA_FRENCH");
Locale.setDefault(Locale.CANADA_FRENCH);
display(Locale.getDefault());
System.out.println("");
System.out.println("Display CANADA");
display(Locale.CANADA);
System.out.println("");
System.out.println("Display FRANCE");
display(Locale.FRANCE);
System.out.println("");
System.out.println("Display CANADA_FRENCH");
display(Locale.CANADA_FRENCH);
}
private static void display(Locale locale) {
System.out.println("Locale = " + locale.toString()
+ " language = \"" + locale.getLanguage() + "\" country = \""
+ locale.getCountry() + "\" variant = \"" + locale.getVariant() + "\"");
}
}
</sscce>