Exemple
Catégorie
Globalisation : Manipulation de l'environnement local

Nom
Eviter d'utiliser des noms d'environnements locaux comme littéraux chaînes

Explication
Dans Java, les noms des environnements locaux ne sont pas fixes et sont susceptibles de changer dans les versions futures. Toutefois, chaque environnement local est représenté par un objet Locale exclusif, compatible avec les versions antérieures. Utilisez cet objet Locale au lieu de la chaîne comportant le nom de l'environnement local.

Solution
Utilisez l'objet Locale comme paramètre des méthodes tenant compte de l'environnement local.

public static final String CHINESE_LOCALE_STRING = "CHINESE"; //$NON-NLS-1$

private static void processEnglishString(String str) {
// traitement de la chaîne en environnement local US
}

private static void processChineseString(String str) {
// traitement de la chaîne en environnement local CHINOIS
}
public static void processString(String str, Locale locale){
if (Locale.CHINA.equals(locale)){
processChineseString(str);
}else {
processEnglishString(str);
}
}


public static void main(String[] args) {
String str = "\u4e1c\u897f\u5357\u5317\u4e2d";//$NON-NLS-1$
if ( CHINESE_LOCALE_STRING.equals( args[0] ) ){
processString( str, Locale.CHINA );
}else {
processString( str, Locale.US );
}
}