Java如何支持I18N?
编辑: 面试啦 发布时间: 2023-05-02 07:05:15
不支持I18N的例子 – NoI18NSample.java
支持I18N的例子
我们需要将硬编码文本转移到外部的资源文件
编写MessagesBundle.properties
编写MessagesBundle_zh_CN.properties
编写MessagesBundle_en_US.properties
编写I18NSample.java
运行I18NSample.java
乱码?
因为资源文件必须是Latin-1或Unicode编码(如\udddd)的字符
使用native2ascii工具,将中文资源文件进行转换
Java支持I18N的编码过程总结:
1、创建属性文件(可能要用native2ascii工具转换)
2、定义Locale对象
3、创建一个ResourceBundle对象
ResourceBundle对象用于分离跟本地相关的数据
如果找不到相应语言或国家代码的属性文件,将使用默认的属性文件(即没有标识语言和国家代码的属性文件:MessagesBundle.properties)
其创建方式如下:
message = ResourceBundle.getBundle(“MessagesBundle”, currentLocale);
第一个参数,表示要从哪些资源属性文件中(MessagesBundle_XX.properties)获取数据
第二个参数,是一个Locale对象,表示要选择哪个资源属性文件
4、从ResourceBundle对象中获取数据
支持I18N的例子
我们需要将硬编码文本转移到外部的资源文件
编写MessagesBundle.properties
编写MessagesBundle_zh_CN.properties
编写MessagesBundle_en_US.properties
编写I18NSample.java
运行I18NSample.java
乱码?
因为资源文件必须是Latin-1或Unicode编码(如\udddd)的字符
使用native2ascii工具,将中文资源文件进行转换
Java支持I18N的编码过程总结:
1、创建属性文件(可能要用native2ascii工具转换)
2、定义Locale对象
3、创建一个ResourceBundle对象
ResourceBundle对象用于分离跟本地相关的数据
如果找不到相应语言或国家代码的属性文件,将使用默认的属性文件(即没有标识语言和国家代码的属性文件:MessagesBundle.properties)
其创建方式如下:
message = ResourceBundle.getBundle(“MessagesBundle”, currentLocale);
第一个参数,表示要从哪些资源属性文件中(MessagesBundle_XX.properties)获取数据
第二个参数,是一个Locale对象,表示要选择哪个资源属性文件
4、从ResourceBundle对象中获取数据
上一篇:建龙钢铁面试总结 下一篇:Jdbc数据访问技术面试题
面试题库导航
- C++面试题
- JAVA面试题
- Oracle面试题
- MySQL面试题
- Linux面试题
- 网络工程师面试题
- 网管面试题
- 软件工程师面试题
- PHP面试题
- .net面试题
- 软件测试面试题
- EJB面试题
- Spring面试题
- Javascript面试题
- Python面试题
- QTP面试题
- Servlet面试题
- J2EE面试题
- Database面试题
- ASP面试题
- Unix面试题
- Loadrunner面试题
- 通信面试题
- 嵌入式面试题
- Ruby面试题
- Delphi面试题
- Mobile开发面试题
- SOA面试题
- JAVA面试题面试题
- 研发工程师面试题
- 软件架构师面试题
- 系统工程师面试题
- Android面试题
- JAVA程序员
- C#面试题