zoukankan
html css js c++ java
国际化问题
在这里面使用JSP来利用property文件应用的一个能显示多国语言的页面,
仅一个JSP和4个properties配置文件
<%
@ page import
=
"
java.io.*
"
%>
<%
@ page import
=
"
java.util.*
"
%>
<%
@ page import
=
"
java.awt.*
"
%>
<%
String
languageDefault
=
Locale.getDefault().getLanguage();
String
countryDefault
=
Locale.getDefault().getCountry();
Locale defaultLocale
=
null
;
String
charset
=
null
;
if
(languageDefault
==
"
en
"
|| languageDefault.equals(
"
en
"
)){
defaultLocale
=
Locale.ENGLISH;
charset
=
"
iso-8859-1
"
;
}
else
if
(countryDefault
==
"
CN
"
|| countryDefault.equals(
"
CN
"
)){
defaultLocale
=
Locale.SIMPLIFIED_CHINESE;
charset
=
"
gb2312
"
;
}
else
if
(countryDefault
==
"
TW
"
|| countryDefault.equals(
"
TW
"
)){
defaultLocale
=
Locale.TRADITIONAL_CHINESE;
charset
=
"
big5
"
;
}
else
{
System.out.println(
"
LanguageDefault not equals en.CountryDefault not equals TW or CN
"
);
}
if
(session.isNew()){
session.setAttribute(
"
locale
"
,defaultLocale);
session.setAttribute(
"
charset
"
,charset);
}
else
{
String
language
=
request.getParameter(
"
language
"
);
if
(language
==
null
|| language.equals(
null
)){
session.setAttribute(
"
locale
"
,defaultLocale);
session.setAttribute(
"
charset
"
,charset);
}
else
{
Locale locale
=
null
;
if
(language.equals(
"
Locale.SIMPLIFIED_CHINESE
"
) || language.equals(
"
Locale.SIMPLIFIED_CHINESE
"
)){
locale
=
Locale.SIMPLIFIED_CHINESE;
charset
=
"
gb2312
"
;
}
else
if
(language.equals(
"
Locale.TRADITIONAL_CHINESE
"
) || language.equals(
"
Locale.TRADITIONAL_CHINESE
"
)){
locale
=
Locale.TRADITIONAL_CHINESE;
charset
=
"
big5
"
;
}
else
if
(language.equals(
"
Locale.ENGLISH
"
) || language.equals(
"
Locale.ENGLISH
"
)){
locale
=
Locale.ENGLISH;
charset
=
"
iso-8859-1
"
;
}
session.setAttribute(
"
locale
"
,locale);
session.setAttribute(
"
charset
"
,charset);
}
}
Locale locale
=
(Locale)session.getAttribute(
"
locale
"
);
ResourceBundle messagesBundle
=
ResourceBundle.getBundle(
"
propertyFiles/uni_property
"
,locale);
//
资源文件放在propertyFiles包下
String
localeCountry
=
locale.getCountry();
String
localeLanguage
=
locale.getLanguage();
System.out.println(
"
locale:
"
+
locale.toString());
System.out.println(
"
localeCountry:
"
+
localeCountry);
System.out.println(
"
localeLanguage:
"
+
localeLanguage);
if
(localeLanguage
==
"
en
"
){
response.setContentType(
"
text/html; charset=ISO8859-1
"
);
}
else
if
(localeCountry
==
"
CN
"
){
response.setContentType(
"
text/html; charset=gb2312
"
);
}
else
if
(localeCountry
==
"
TW
"
){
response.setContentType(
"
text/html; charset=big5
"
);
}
%>
<
html
>
<
head
>
<
meta
name
="GENERATOR"
content
="Microsoft FrontPage 4.0"
>
<
meta
name
="ProgId"
content
="FrontPage.Editor.Document"
>
<
title
>
Internationzational by propery file
</
title
>
<
base
target
="contents"
>
</
head
>
<
body
>
<
table
border
="0"
width
="796"
style
="font-size: 10pt"
cellspacing
="0"
cellpadding
="0"
height
="60"
>
<
tr
rowspan
=5
><
td
colspan
=3
>
</
td
></
tr
>
<
tr
rowspan
=5
><
td
colspan
=3
>
</
td
></
tr
>
<
tr
>
<
td
width
="196"
height
="68"
></
td
>
<
td
width
="470"
height
="64"
>
<
p
align
="center"
><
a
href
="#"
onclick
="href='uni_property.jsp?language=Locale.SIMPLIFIED_CHINESE'"
>
<%
=
messagesBundle.getString(
"
simplifiedChinese
"
)
%>
</
a
>
|
<
a
href
="#"
onclick
="href='uni_property.jsp?language=Locale.TRADITIONAL_CHINESE'"
>
<%
=
messagesBundle.getString(
"
traditionalChinese
"
)
%>
</
a
>
|
<
a
href
="#"
onclick
="href='uni_property.jsp?language=Locale.ENGLISH'"
>
<%
=
messagesBundle.getString(
"
english
"
)
%>
</
a
></
td
>
<
td
width
="130"
height
="56"
>
<
p
align
="center"
>
<%
=
messagesBundle.getString(
"
username
"
)
%>
</
td
>
</
tr
>
</
table
>
</
body
>
</
html
>
四个资源文件如下
#uni_property.properties
username=JSP Developer
simplifiedChinese=SimplifiedChinese
traditionalChinese=TraditionalChinese
english=English
#uni_property_en.properties
username=JSP Developer
simplifiedChinese=SimplifiedChinese
traditionalChinese=TraditionalChinese
english=English
#uni_property_zh_CN.properties
username=JSP\u5f00\u53d1\u8005
simplifiedChinese=\u7b80\u4f53\u4e2d\u6587
traditionalChinese=\u7e41\u4f53\u4e2d\u6587
english=\u82f1\u6587
#uni_property_zh_TW.properties
username=JSP\u958b\u767c\u8005
simplifiedChinese=\u7c21\u9ad4\u4e2d\u6587
traditionalChinese=\u7e41\u9ad4\u4e2d\u6587
english=\u82f1\u6587
在同连接上单击会出现不同语言界面,另外需要注意的是
ResourceBundle messagesBundle
=
ResourceBundle.getBundle(
"
propertyFiles/uni_property
"
,locale);
//
资源文件放在propertyFiles包下
该方法查找的起始位置为默认的包,也就是没有名字的包,我们这里放属性文件放在propertyFiles包下,所以为propertyFiles/
另外在属性文件中使用的是Unicode编码,它支持互相转换,处理和显示现在世界上用不同语言写的文本。
查看全文
相关阅读:
面经 收藏的 这可能不只是一篇面经
2017网易秋招编程集合
网易2017春招笔试真题编程题集合题解
小朋友 排序
网易编程题目 02 赶去公司
网易有道2017内推选择题
12,享元模式(Flyweight Pattern)是以共享的方式高效的支持大量的细粒度的对象。
11,外观模式(Facade Pattern)是为子系统中的一组接口提供一个一致的界面,此模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。
新手进行Oracle MIS系统开发的步骤
Oracle常用查看表结构命令(一)
原文地址:https://www.cnblogs.com/eflylab/p/622149.html
最新文章
◆◆1SQVI 创建简单query报表入门教程
SAP Query创建教程
查看SOAMANAGER报错详细信息
◆◆0[问题解决]websevice调用中ICM_HTTP_SSL_PEER_CERT_UNTRUSTED错误解决
◆◆0SAP Webservice实例教程
使用smartform模板发送HTML邮件实例教程
厦门BRT 硬币型非接触式IC卡分析
货币 随笔 不定期更新 欢迎探讨
OpenWrt——神奇的路由系统
拒绝和做减法
热门文章
清理电脑的C盘占用
tst
科研呢喃3-论科研选题
0-学习英语的原则
0-博客全站导航-v1
0-机器学习-深度学习-入门建议-章浩
0-机器学习技法-台大林轩田
0-机器学习基石-台大林轩田
huawei 三套题
华为huawei oj
Copyright © 2011-2022 走看看