码迷,mamicode.com
首页 > 编程语言 > 详细

java web 国际化

时间:2017-03-17 21:12:07      阅读:186      评论:0      收藏:0      [点我收藏+]

标签:locale   dateformat   resourcebundle   numberformate   messageformat   

一、Locale类

//Locale locale = Locale.CHINA;
Locale locale = new Locale("zh", "CN");
System.out.println(locale.getLanguage());
System.out.println(locale.getDisplayCountry());
System.out.println(locale.getDisplayLanguage());

二、DateFormat类

Date date = new Date();
System.out.println(date);
Locale locale = new Locale("zh", "cn");
DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.FULL, locale);
System.out.println(dateFormat.format(date));
String dates = "2017-3-17";
DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
System.out.println(df.parse(dates));

三、NumberFormat类

double d = 1.12d;
Locale locale = Locale.CHINA;
//格式化为货币
NumberFormat numberFormat = NumberFormat.getCurrencyInstance(locale);
//格式化为数字
NumberFormat numberFormat2 = NumberFormat.getNumberInstance(locale);
//格式化为百分比
NumberFormat numberFormat3 = NumberFormat.getPercentInstance(locale);
System.out.println(numberFormat.format(d));
System.out.println(numberFormat2.format(d));
System.out.println(numberFormat3.format(d));

四、MessageFormat类

String str = "{0},{1}";
String strs = MessageFormat.format(str, "userName","admin");
System.out.println(strs);

五、ResourceBundle类

ResourceBundle bundle = ResourceBundle.getBundle("i18n",new Locale("en","US"));
System.out.println(bundle.getString("userName"));

六、国际化资源文件

i18n.properties userName=userName

i18n_zh_CN.properties userName=\u7528\u6237\u540D

i18n_en_US.properties userName=userName


注:i18n是基名,zh是语言代码,CN是国家代码


七、JSP页面的fmt标签

<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%> 
<%
Locale locale = Locale.US;
//Locale locale = Locale.CHINA;
request.setAttribute("locale", locale);
System.out.println(request.getLocale());
//打印出所有应用中配置的资源国际文件
Enumeration<Locale> enumeration = request.getLocales();
while(enumeration.hasMoreElements()){
Locale locale2 = enumeration.nextElement();
System.out.println(locale2);
}
%>
<fmt:setLocale value="${requestScope.locale}"/>
${requestScope.locale}
<fmt:setBundle basename="i18n"/>
<fmt:message key="userName"></fmt:message>
<fmt:formatNumber type="currency" value="123"></fmt:formatNumber>


本文出自 “11137669” 博客,请务必保留此出处http://11147669.blog.51cto.com/11137669/1907741

java web 国际化

标签:locale   dateformat   resourcebundle   numberformate   messageformat   

原文地址:http://11147669.blog.51cto.com/11137669/1907741

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!