Java学习之国际化程序

国际化程序就是把程序的语言根据用户使用的语言显示,各个国家的用户都可以看懂

实现方法就是把输出文字都写在配置文件里,然后根据用户系统语言选择不同的语言输出

 1 package com.gh;
 2
 3 import java.text.MessageFormat;
 4 import java.util.Locale;
 5 import java.util.ResourceBundle;
 6 import java.util.Scanner;
 7 /**
 8  * 国际化程序
 9  * 用配置文件改变输出语言
10  * @author ganhang
11  *
12  */
13 public class dome {
14     public static void main(String[] args) {
15         //实例化locale
16         Locale locale = Locale.getDefault();
17         //配置文件和locale绑定
18         ResourceBundle res = ResourceBundle.getBundle("com.gh.info", locale);
19         Scanner sc = new Scanner(System.in);
20         String usenamekey = res.getString("usename");
21         String passwordkey = res.getString("password");
22         String inputkey = res.getString("input");
23         String infosuccess = res.getString("info.success");
24         String infoerro = res.getString("info.erro");
25         System.out.println(inputkey + usenamekey);
26         String username = sc.next();
27         System.out.println(inputkey + passwordkey);
28         String pwd = sc.next();
29         if ("admin".equals(username) && "123".equals(pwd)) {
30             String info =MessageFormat.format(infosuccess,username);
31             System.out.println(info);
32         }
33         else
34             System.out.println(infoerro);
35     }
36 }

配置文件

info_zh_CN.properties

usename=\u7528\u6237\u540D
password=\u5BC6\u7801
input=\u8BF7\u8F93\u5165
info.success=\u767B\u5F55\u6210\u529F\uFF0C{0}
info.erro=\u7528\u6237\u540D\u6216\u5BC6\u7801\u9519\u8BEF
时间: 2024-12-31 04:03:49

Java学习之国际化程序的相关文章

Java常用类库——国际化程序(Locale,ResourceBundle以及MessageFormat处理动态文本)

本章目标 掌握国际化程序的基本实现原理. 掌握资源文件的作用. 掌握Locale类的基本实现原理. 掌握ResourceBundle类的作用. 可以使用MessageFormat处理动态文本. 了解资源类的使用. 国际化程序 国际化的操作就是指一个程序可以同时适应多门语言,即:如果现在程序的使用者是中国人,则会以中文为显示文字,如果现在程序的使用者是英国人,则会以英语为显示文字,也就是说可以通过国际化操作,让一个程序适应各个国家的语言要求. 那么对于各个国家来说,每一个程序的代码是不会有任何改变

java学习笔记—国际化(41)

国际化:internationalization即I18N. 举例: 本科高校的网站,一般的都有中文和英文两种页面风格.因此将这种根据不同用户群体显示不同的页面风格的方式称之为页面的国际化. 翻译 VS 国际化 翻译:Chrome 国际化:主要做的是页面的显示信息的国际化,至于文件等其他的资源是无法进行国际化. 1  国际化的原理 获取用户的本地信息 Locale通过静态属性获取区域对象. 准备不同区域国家的需要显示的资源 全部使用properties配置文件进行实现.但是文件名需要按照指定的规

java 学习 ——计算器小程序

简易计算器小程序代码: package jisuanqi; //声明需要插入的包 import java.awt.*; import java.lang.Object; import java.lang.String; import javax.swing.*; import java.awt.event.*; import java.awt.TextComponent; //声明一个主类jisuanqi,继续窗口类Frame public class jisuanqi extends Fram

JAVA学习笔记-日历程序

package myCalendar; import java.text.DateFormat;import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date;import java.util.GregorianCalendar;import java.util.Scanner; /** * 可视化日历 * @author iwang

(。??)ノ~个人java学习随笔记录

基本认识 1.编程思维 根据这几天的java学习,编写程序最重要的就是要有一个清晰的思路.语法上的错误可以跟随着不断的联系与学习来弥补,清晰的思维却只有自己来前期模仿,后面慢慢摸索形成一套属于自己的思维方式. 2.编程方向 程序编写方面考虑的是完成某个任务需要的东西(对象),也就是达成目标需要用什么来完成.程序主要编写思路也是围绕这些东西来写,而不是围绕完成这个目标的步骤.(这就是所谓的面向对象编程,和C语言最大的区别) 3.编程习惯 随着以后编写的程序的不断扩张,程序会越来越大,需要的对象也会

《Java程序性能优化》学习笔记 Ⅲ 并行程序优化

第四章 并行程序优化4.1 并行程序设计模式4.2 JDK多任务执行框架4.3 JDK并发数据结构4.4 并发控制方法4.5 锁的性能和优化4.6 无锁的并行计算 1.非阻塞同步避免了基于锁的同步的缺陷,无锁算法没有锁竞争带来的系统开销,也没有线程间频繁调度带来的开销.CAS算法:包含3个参数CAS(v,e,n).V表示要更新的变量,E表示预期值,N表示新值2.JDK的java.util.concurrent.atomic包下,有一组使用无锁算法实现的原子操作类,如AtomicInteger/A

黑马程序员 【】java学习之路——TCP(三)客户端上传文件到服务器

------- <a href="http://www.itheima.com" target="blank">android培训</a>.<a href="http://www.itheima.com" target="blank">java培训</a>.期待与您交流! ---------- import java.io.*; import java.net.*; class

【java学习】Servlet简单的表单程序(一)

此文用于java学习,在此小记. 在此小Demo中使用到了Servlet,所以有必要了解一下Servlet的相关知识.(Servlet的相关知识摘抄自http://blog.csdn.net/jiuqiyuliang/article/details/36424981) Servlet是Sun公司提供的一门用于开发动态web网页的技术.Sun公司在API中提供了一个servlet接口,我们如果想使用java程序开发一个动态的web网页,只需要实现servelet接口,并把类部署到web服务器上就可

正确的Java学习线路图原来是这样,教你如何成为优秀的程序员

IT行业现在正处于火热的阶段,很多人面对就业这个难题迷惘之后选择了程序员的道路,java作为其中一个大的板块受到了很多学员的青睐,那么如何正确的学习java呢?千锋长沙的老师来给大家分析一下正确的java学习路线,教你教你如何成为优秀的程序员! 首先务必要在学好基础(比如计算机系统.算法.编译原理等等)的前提下,再考虑去进行下面的学习.Java基础首先去找一个Java的基础教程学一下,这里可以推荐一个地址,或者你也可以参照这个地址上去找相应的视频.学习Java基础的时候,应该尽量多动手,很多时候