jdk9以上版本多语言编程处理方法

jdk9以上版本书写语言文件.properties时不需使用native2ascii转码,只需要在保存时将编码方式保存为UTF-8编码即可。

代码样例如下:

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

public class Test {
    
    
	public static void main(String[] args) {
    
    
		Locale myLocale = new Locale("zh","CN");
		ResourceBundle bundle= ResourceBundle.getBundle("msg",myLocale);
		System.out.println(bundle.getString("name"));	
	}
}

Locale的第一个变量为语言:zh中文,en英文。第二个变量为地区CN中国,US美国。
ResourceBundle则根据相应的Locale加载资源文件。资源文件被放resources目录下:
在这里插入图片描述
准备好语言文件后就可以得到相应环境下的语言了。

ResourceBundle的搜寻方法:

new Locale(“zh”, “CN”)提供本地化信息,上面这行代码,程序会首先在classpath下寻找my_zh_CN.properties文件,若my_zh_CN.properties文件不存在,则取找my_zh.properties,如还是不存在,继续寻找my.properties,若都找不到就抛出异常。

猜你喜欢

转载自blog.csdn.net/DwenKing/article/details/108959356