多種語言(big5\gbk\gb2312\utf8\Shift_JIS\iso8859-1)的網(wǎng)頁編碼切換解決方案歸納
更新時間:2012年06月01日 01:42:47 作者:
多種語言(big5\gbk\gb2312\utf8\Shift_JIS\iso8859-1)的網(wǎng)頁編碼切換解決方案歸納
1、response.setContentType("text/html; charset=GB2312");
或者response.setContentType("text/html; charset=UTF-8");
charset前面留一個空格
2、頭文件包含
3、 一般處理是將在網(wǎng)頁上提交的中文轉(zhuǎn)碼為Unicode存儲在數(shù)據(jù)庫中,取出來的
時候,用自動轉(zhuǎn)碼(ContentType=”text/html;charset=gb2312”或ContentType=”text/html;charset=big5”)的方式輸出到網(wǎng)頁。
4、得到一個字符串時,你必須知道是GB編碼還是BIG5編碼的,然后GB編碼就用:strTMP = new String(strTMP.getBytes(),"GBK"),BIG5編碼就:strTMP = new String(strTMP.getBytes(),"BIG5"),這樣就可以把源字符串全轉(zhuǎn)換為UNICODE,編碼統(tǒng)一以后就能解決簡繁體同屏顯示的問題了。
5、方法1是jsp中所有的標(biāo)簽和數(shù)據(jù)都存儲在數(shù)據(jù)庫中,用戶選哪種語言就從庫中選對應(yīng)的數(shù)據(jù)進(jìn)行展示;
方法2是使用幾個MessageBuddle.properties文件進(jìn)行定義所有的label,jsp的lable使用定義的label參數(shù),這樣通過切換properties文件就可以輕松實現(xiàn)國際化,而jsp文件勿需做任何改變.
一種語言一個配置文件
默認(rèn)根據(jù)瀏覽器使用語言判斷
select語言改變是重新加載配置文件
6、Struts中是不能完全實現(xiàn)的。因為Struts只可以國際化標(biāo)簽。而內(nèi)容數(shù)據(jù)還是應(yīng)該在數(shù)據(jù)庫中設(shè)置。
設(shè)置一個字段Number(1) lang ,中文為1,英文為2,日文為3 等等
在提取數(shù)據(jù)的SQL語句中做判斷。這樣比較實際點。
7、 transform.js
<script type="text/javascript" language="javascript" src="<%= request.getContextPath() %>/js/transform.js"></script>
<script type="text/javascript" language="javascript">
function s2t()
{document.body.innerHTML = document.body.innerHTML.s2t();}
function t2s()
{document.body.innerHTML = document.body.innerHTML.t2s();}
</script>
<a href="javascript:s2t()"><font color="white">繁體中文</font></a> | <a href="javascript:t2s()"><font color="white">簡體中文</font></a>
8、JSP:
<%@ page pageEncoding="utf-8" contentType="text/html; charset=utf-8" %>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
然后加上一個Web Filter做編碼轉(zhuǎn)換,
再確認(rèn)一下數(shù)據(jù)庫也是utf-8的話,
不管是輸入輸出,肯定沒問題的。
·JSP,JAVA文件的編碼方式采用utf-8
·數(shù)據(jù)庫采用utf-8的編碼
或者response.setContentType("text/html; charset=UTF-8");
charset前面留一個空格
2、頭文件包含
3、 一般處理是將在網(wǎng)頁上提交的中文轉(zhuǎn)碼為Unicode存儲在數(shù)據(jù)庫中,取出來的
時候,用自動轉(zhuǎn)碼(ContentType=”text/html;charset=gb2312”或ContentType=”text/html;charset=big5”)的方式輸出到網(wǎng)頁。
4、得到一個字符串時,你必須知道是GB編碼還是BIG5編碼的,然后GB編碼就用:strTMP = new String(strTMP.getBytes(),"GBK"),BIG5編碼就:strTMP = new String(strTMP.getBytes(),"BIG5"),這樣就可以把源字符串全轉(zhuǎn)換為UNICODE,編碼統(tǒng)一以后就能解決簡繁體同屏顯示的問題了。
5、方法1是jsp中所有的標(biāo)簽和數(shù)據(jù)都存儲在數(shù)據(jù)庫中,用戶選哪種語言就從庫中選對應(yīng)的數(shù)據(jù)進(jìn)行展示;
方法2是使用幾個MessageBuddle.properties文件進(jìn)行定義所有的label,jsp的lable使用定義的label參數(shù),這樣通過切換properties文件就可以輕松實現(xiàn)國際化,而jsp文件勿需做任何改變.
一種語言一個配置文件
默認(rèn)根據(jù)瀏覽器使用語言判斷
select語言改變是重新加載配置文件
6、Struts中是不能完全實現(xiàn)的。因為Struts只可以國際化標(biāo)簽。而內(nèi)容數(shù)據(jù)還是應(yīng)該在數(shù)據(jù)庫中設(shè)置。
設(shè)置一個字段Number(1) lang ,中文為1,英文為2,日文為3 等等
在提取數(shù)據(jù)的SQL語句中做判斷。這樣比較實際點。
7、 transform.js
復(fù)制代碼 代碼如下:
<script type="text/javascript" language="javascript" src="<%= request.getContextPath() %>/js/transform.js"></script>
<script type="text/javascript" language="javascript">
function s2t()
{document.body.innerHTML = document.body.innerHTML.s2t();}
function t2s()
{document.body.innerHTML = document.body.innerHTML.t2s();}
</script>
<a href="javascript:s2t()"><font color="white">繁體中文</font></a> | <a href="javascript:t2s()"><font color="white">簡體中文</font></a>
8、JSP:
<%@ page pageEncoding="utf-8" contentType="text/html; charset=utf-8" %>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
然后加上一個Web Filter做編碼轉(zhuǎn)換,
再確認(rèn)一下數(shù)據(jù)庫也是utf-8的話,
不管是輸入輸出,肯定沒問題的。
·JSP,JAVA文件的編碼方式采用utf-8
·數(shù)據(jù)庫采用utf-8的編碼
您可能感興趣的文章:
- php 判斷網(wǎng)頁是否是utf8編碼的方法
- js 顯示base64編碼的二進(jìn)制流網(wǎng)頁圖片
- Base64編碼加密JS代碼網(wǎng)頁版
- ASP+FSO生成的網(wǎng)頁文件默認(rèn)編碼格式以及轉(zhuǎn)換成UTF-8編碼方法
- ASP UTF-8編碼生成靜態(tài)網(wǎng)頁的函數(shù)
- asp.net HttpWebRequest自動識別網(wǎng)頁編碼
- asp.net 網(wǎng)頁編碼自動識別代碼
- vbs或asp采集文章時網(wǎng)頁編碼問題
- 網(wǎng)頁語言編碼及asp亂碼問題解決方案
- 判斷網(wǎng)頁編碼的方法python版
相關(guān)文章
VSCode配置Lua開發(fā)環(huán)境的實現(xiàn)示例
本文主要介紹了VSCode配置Lua開發(fā)環(huán)境的實現(xiàn)示例,主要包括下載及配置環(huán)境,具有一定的參考價值,感興趣的可以了解一下2023-09-09C、C++、Java到Python,編程入門學(xué)習(xí)什么語言比較好
這篇文章主要介紹了C、C++、Java到Python,編程入門學(xué)習(xí)什么語言比較好,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-07-07cnpm不是內(nèi)部命令的解決方案:配置環(huán)境變量【推薦】
這篇文章主要介紹了cnpm不是內(nèi)部命令的解決方案:配置環(huán)境變量的相關(guān)知識,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下2019-07-07Elasticsearch索引的分片分配Recovery使用講解
這篇文章主要為大家介紹了Elasticsearch索引的分片分配Recovery使用講解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-04-04win10安裝Anaconda+tensorflow2.0-CPU+Pycharm的圖文教程
本文通過圖文并茂的形式給大家介紹了win10安裝Anaconda+tensorflow2.0-CPU+Pycharm的教程,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下2019-12-12HTTP提交方式之PUT詳細(xì)介紹及POST和PUT的區(qū)別
這篇文章主要介紹了HTTP提交方式之PUT詳細(xì)介紹及POST和PUT的區(qū)別,本文簡潔易懂,需要的朋友可以參考下2014-07-07GitHub 熱門:別再用 print 輸出來調(diào)試代碼了
本文給大家分享GitHub 熱門:別再用 print 輸出來調(diào)試代碼了的詳細(xì)解說,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下2019-04-04