Java学习笔记——实现国际化程序开发 附:不同的国家/地区与语言缩写代码
Locale类
要想实现国家化程序开发:首先需要解决的是不同国家用户的区域和语言编码问题,在java.util包里面提供有一个专门描述区域和语言编码的类,Local
类,主要使用两个构造方法进行实例化:
- 构造方法:
public Locale(String language)
; - 构造方法:
public Locale(String language, String country)
;
【范例】实例化Locale类对象
import java.util.Locale;
public class JavaDemo {public static void main(String[] args) throws Exception{Locale loc = new Locale("zh","CN");System.out.println(loc);}
}#zh_CN
此时需要的是国家和语言的代码。中文:zh_CN、美国:en_US.
要想自动获得当前的运行环境,可利用Locale类本身默认的方式进行实例化:
- 读取本地默认环境:
public static getDefault
;
import java.util.Locale;
public class JavaDemo {public static void main(String[] args) throws Exception{Locale loc = Locale.getDefault();System.out.println(loc);}
}
#zh_CN
读取资源文件:ResourceBundle
读取资源文件主要依靠的是java.util.ResourceBundle类完成。定义:
public abstract class ResourceBundle extends Object
;
ResourceBundle是一个抽象类,实例化需要使用其中一个static方法:
- 获取Resource Bundle类对象:
public static final ResourceBundle getBundle(String baseName)
;
|- baseName:描述的是资源文件的名称,但是没有后缀 - 根据
key
读取资源内容:public final String getString(String key);
import java.util.ResourceBundle;public class JavaDemo {public static void main(String[] args) throws Exception{ResourceBundle resource = ResourceBundle.getBundle("message.Messages");String val = resource.getString("info");System.out.println(val);}
}
#欢迎访问!这是中文的
如果资源没有放在包里面,则直接编写资源名称即可。
实现国际化程序开发
- 建立
Messages.properties
文件:info=Welcome!欢迎欢迎 - 建立
Messages_zh_CN.properties
文件:info=欢迎访问!这是中文的 - 建立
Messages_en_US.properties
文件: info=Welcome!This is English~
package demo;import java.util.Locale;
import java.util.ResourceBundle;public class JavaDemo {public static void main(String[] args) throws Exception{Locale loc = new Locale("en","US");ResourceBundle resource = ResourceBundle.getBundle("message.Messages",loc);String val = resource.getString("info");System.out.println(val);}
}
#Welcome!This is English~
如果不指定Locale,将默认为本地语言版本。
读取顺序:读取指定区域的资源文件>默认的本地资源文件>公共的资源(没有设置区域)。
不同的国家/地区与语言缩写代码
国家/地区 | 语言代码 | 国家地区 | 语言代码 |
---|---|---|---|
简体中文(中国) | zh-cn | 简体中文(台湾地区) | zh-tw |
繁体中文(香港) | zh-hk | 英语(香港) | en-hk |
英语(美国) | en-us | 英语(英国) | en-gb |
英语(全球) | en-ww | 英语(加拿大) | en-ca |
英语(澳大利亚) | en-au | 英语(爱尔兰) | en-ie |
英语(芬兰) | en-fi | 芬兰语(芬兰) | fi-fi |
英语(丹麦) | en-dk | 丹麦语(丹麦) | da-dk |
英语(以色列) | en-il | 希伯来语(以色列) | he-il |
英语(南非) | en-za | 英语(印度) | en-in |
英语(挪威) | en-no | 英语(新加坡) | en-sg |
英语(新西兰) | en-nz | 英语(印度尼西亚) | en-id |
英语(菲律宾) | en-ph | 英语(泰国) | en-th |
英语(马来西亚) | en-my | 英语(阿拉伯) | en-xa |
韩文(韩国) | ko-kr | 日语(日本) | ja-jp |
荷兰语(荷兰) | nl-nl | 荷兰语(比利时) | nl-be |
葡萄牙语(葡萄牙) | pt-pt | 葡萄牙语(巴西) | pt-br |
法语(法国) | fr-fr | 法语(卢森堡) | fr-lu |
法语(瑞士) | fr-ch | 法语(比利时) | fr-be |
法语(加拿大) | fr-ca | 西班牙语(拉丁美洲) | es-la |
西班牙语(西班牙) | es-es | 西班牙语(阿根廷) | es-ar |
西班牙语(美国) | es-us | 西班牙语(墨西哥) | es-mx |
西班牙语(哥伦比亚) | es-co | 西班牙语(波多黎各) | es-pr |
德语(德国) | de-de | 德语(奥地利) | de-at |
德语(瑞士) | de-ch | 俄语(俄罗斯) | ru-ru |
意大利语(意大利) | it-it | 希腊语(希腊) | el-gr |
挪威语(挪威) | no-no | 匈牙利语(匈牙利) | hu-hu |
土耳其语(土耳其) | tr-tr | 捷克语(捷克共和国) | cs-cz |
斯洛文尼亚语 | sl-sl | 波兰语(波兰) | pl-pl |
瑞典语(瑞典) | sv-se | 西班牙语 (智利) | es-cl |
http://www.taodudu.cc/news/show-3447348.html
相关文章:
- 小程序中所有组件学习
- wincc提示计算机丢失ccctrl,WinCC(变量记录和组态报警)
- 计算机基础设计第十五套,计算机基础试题第十五套
- 献给你,我亲爱的人儿
- 从阿尔法磁谱仪在国际空间站的最新结果
- 十六进制转化为ASCII码引起的的进制的故事
- Science丨肠道菌群与生物钟
- java将古诗竖排_写一个java程序 将一首古诗竖着排序从右往左读
- Java自存笔记
- [转载]微软雅黑体使用于WORD中,行距过大的解决办法!
- 关于python使用wordcloud生成繁体字词云的方法
- 面对流氓软件,是逃避还是反击?(连载一、流氓软件的危害)
- 电脑日常维护十必须
- XSS跨站脚本攻击原理与常见的脚本及《XSS跨站脚本攻击剖析与防御》摘录总结
- 半生缘 (上)
- 心田花开写作指导二年级看图写话风筝写作方法
- 心田花开:小学五年级语文上册《小桥流水人家》课件解析
- 7月明星庆生榜 | .fans明星专属生日域名快来抢
- %3c燕子专列%3e语言文字表达,人教版小学三年级下册语文练习题
- java两个成语交叉,形容相互交叉的成语-交叉出现的成语-互相交叉在一起的成语...
- android 用拼音对汉字排序
- MySQL拼音首字母查询(支持三个中文以内的查询)
- C语言:实验3-6 计算个人所得税.2021-07-19
- C语言笔记之个税计算
- 个人永久性免费-Excel催化剂功能第40波-工资、年终奖个人所得税计算函数
- 第八周项目4个人所得税计算
- 第八周项目 4 个人所得税计算机
- 必看!个人所得税专项附加扣除20个焦点问题
- 计算个人所得税最佳纳税额(以2019最新税法规则计算)
- 求个人所得税
Java学习笔记——实现国际化程序开发 附:不同的国家/地区与语言缩写代码相关推荐
- Java学习笔记项目三:开发团队调度软件(尚硅谷)
JAVA学习笔记开发团队调度软件 ①创建基础组件 Equipment 接口 package august.domain;/*** 设备领取** @author : Crazy_August* @Dat ...
- 【java学习笔记】浅析JavaWeb开发中Model1模式和Model2模式
Model1模式 JavaBean就是java类,JavaBean分两类:一类是实体Bean,一类是业务Bean model1模式优点:执行效率高,开发效率比较高,适合小型项目 model1模式缺点: ...
- Java学习笔记-全栈-web开发-02-css必备基础
说明: 如果您是后端开发人员,实际上这章只需要知道个大概即可,一般来说美化工作不需要我们完成. 但更多情况下,我们得能看懂这些css是如何美化的,美化的结果是什么. 因此,后端开发人员不必深入学习. ...
- Java学习笔记-Day42 HTML概述
Java学习笔记-Day42 HTML概述 一.前端简介 二.HTML 语言 1.简介 2.HTML的编写规范 3.HTML标签的声明 4.HTML的调试 5.标记语言的特点 6.头标签head 7. ...
- 【java学习笔记day01】运行第一个程序Helloworld!
java学习笔记day01 2.什么是软件工程师? 3.什么是软件? 4.开发软件需要计算机编程语言,计算机编程语言有很多,例如 c, c++,Java,NET,c#,php... 5.Java软件工 ...
- java学习笔记(二十八)——开发一个小项目(VMeeting3.0)
上篇文章按照较规范的产品需求文档梳理了项目的逻辑,感觉开发起来明晰了很多:挂上一篇文章java学习笔记(二十七)--开发一个小项目(VMeeting2.0)_Biangbangbing的博客-CSDN ...
- 《Java学习笔记(第8版)》学习指导
<Java学习笔记(第8版)>学习指导 目录 图书简况 学习指导 第一章 Java平台概论 第二章 从JDK到IDE 第三章 基础语法 第四章 认识对象 第五章 对象封装 第六章 继承与多 ...
- Java 学习笔记:第一章 Java入门
Java 学习笔记:第一章 Java入门 1.1 计算机语言发展史以及未来方向 1.2 常见编程语言介绍 C语言 C++ 语言 Java语言 PHP 语言 Object-C和Swift 语言 Java ...
- Java学习笔记-Day64 Spring 框架(二)
Java学习笔记-Day64 Spring 框架(二) 一.控制反转IOC和依赖注入DI 1.控制反转IOC 2.依赖注入DI 3.Spring IOC容器 3.1.简介 3.2.实现容器 3.2.获 ...
最新文章
- vs 中大括号之间垂直虚线显示
- [经典排序算法][集锦]
- TLS回调函数(1)
- ubuntu安装office2010方法如下:
- delphichm博客于2013年10月16日申请成功了!
- ubuntu学习摘要-ubuntu root用户
- 利用Java Swing 实现游戏开发
- 拓扑检查C++(ArcObject)
- pom.xml 配置maven私服
- 如何购买微软的wince 等授权组件等?(找到了!)
- Unity 如何获取安卓设备的SN号
- html输入框只能输入整数,轻松让INPUT框只能输入整数
- EN 13329强化木地板规范要求和试验方法
- ah、esp、gre协议_AH,ESP的协议号和它们支持的功能有何差异?两种模式下的差异是什么?...
- 【优化算法】多目标灰狼优化算法(MOGWO)【含Matlab源码 099期】
- 解析区块链游戏与GameFi的发展历程
- 720 词典中最长的单词(Trie树)
- 【Echarts Gallery】简单使用
- Galgames Hgames下载中心,无毒
- Tree Audio Branch录音 Sophia Pfister - Bad Decisions
热门文章
- flash加载html代码
- 带低压报警的51单片机太阳能充电宝设计与制作(完整代码资料)
- 粘贴PDF文本批量去掉换行符
- 计算机论文岗位介绍,岗位任职教育计算机教学的论文
- vue打包慢解决方法 npm run build 卡住不动
- UserWarning: Failed to load image Python extension: [WinError 126] 找不到指定的模块。 warn(f“Failed to load
- DVD刻录初学者必读
- Xcode objective-c objective-c++以及混编的理解4
- Java-使用JSP+Servlet 制作成语接龙
- Introduction写作常用句式