开发者学堂课程【Java 高级编程:国家代码】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/20/detail/373
国家代码
编写程序,实现国际化应用,从命令输入国家的代号,例如,1 表示中国,2 表示美国,然后根据输入代号的不同调用不同,的资源文件显示信息。
本程序的实现肯定要通过 Locale 类的对象来指定区域,随后利用 Resource Bundle类加载资源文件,而继续使用初始化参数形式来定义中文的资源文件完成。
1.定义中文的资源文件:cn.mldn.message. Message_zh_CN. properties
info=感谢小强同学请客吃冰淇淋
2.定义英文的资源文件:cn.mldn.message. Message_en_US. properties
info= Thanks Qiang, your ice very nice!
3.定义程序类进行加载控制;(程序代码如下)
1 package cn.mldn.demo;
2
3-import java. util. regex. Matcher;
4 import java.util. regex. Pattern;
5
6 class MessageUtil
public static final int CHINA =1;
public static final int USA 2;
private static final String KEY "info";
1e
private static final string BASENAME="cn. mldn.message. Messages";
11 public string getMessage(int num){
12 Locale loc this. getLocale(num);
13 if (loc = null)
14 return "Nothing";
15 else
16 return ResourceBundle. getBundle("", locale)
17}
18}
19private Locale getLocale(int num){
20 switch (num){
22 case CHINA:
return new Locale("zh", "CN");
23 case USA:
24 return new Locale("en","US");
25 default:
26 return null;
27 }
class ressageuLi
public static final int CHINA =1;-
public static final int USA =2;.
private static final String KEY ="info";.
private static final String BASENAME ="cn. mldn. message. Messages";.
public String getMessage(int num){
Locale loc=this. getLocale(num)
if (loc null)
return "Nothing"
else
return ResourceBundle getBundle(BASENAME. loc) getString(KEY):