Java應(yīng)用中文亂碼問(wèn)題_第1頁(yè)
Java應(yīng)用中文亂碼問(wèn)題_第2頁(yè)
Java應(yīng)用中文亂碼問(wèn)題_第3頁(yè)
Java應(yīng)用中文亂碼問(wèn)題_第4頁(yè)
Java應(yīng)用中文亂碼問(wèn)題_第5頁(yè)
已閱讀5頁(yè),還剩20頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

專(zhuān)題:

Java應(yīng)用中文亂碼問(wèn)題(一)JSP應(yīng)用中文亂碼問(wèn)題(Tomcat環(huán)境):

1、亂碼的由來(lái);2、request對(duì)象與字符編碼;3、response對(duì)象與字符解碼;4、JSP中構(gòu)造的String與字符編碼;5、Console中的字符編碼;6、其他應(yīng)用中的字符編碼;JSP應(yīng)用中文亂碼問(wèn)題1、亂碼的由來(lái)(1)日常字符如何被計(jì)算機(jī)“認(rèn)識(shí)”并處理?利用特定的字符集charset將字符轉(zhuǎn)換為對(duì)應(yīng)的二進(jìn)制編碼(字節(jié))

在計(jì)算機(jī)系統(tǒng)中存儲(chǔ)、傳輸、運(yùn)算等。在顯示字符時(shí)應(yīng)該使用同一字符集將二進(jìn)制編碼進(jìn)行解碼。如果顯示漢字時(shí)使用的解碼字符集和原編碼字符集不一致則會(huì)出現(xiàn)亂碼。字符10011011編碼解碼(顯示)1、亂碼的由來(lái)(2)常用的編碼字符集:

美國(guó)ASCII;歐洲ISO-8859-1;中國(guó)GB2312、GBK;國(guó)際Unicode;字符10011011編碼解碼(顯示)表單客戶(hù)端responserequestTomcat(JSP容器)web服務(wù)器*.jsp---------------request2、request對(duì)象與字符編碼如果沒(méi)有指定request的編碼方式,那么從客戶(hù)端接受到的參數(shù)的名字和參數(shù)值都是以ISO-8859-1編碼的String。默認(rèn)編碼ISO-8859-12、request對(duì)象與字符編碼

request對(duì)象的方法:

publicStringgetParameter(Stringname)

獲取客戶(hù)端表單傳來(lái)的參數(shù)值,參數(shù)為表單控件的name屬性值,如果name不存在,則返回null。(1)表單輸入頁(yè)面(2)信息讀取頁(yè)面<formname="frm"action="StuInfoOpt.jsp"method="post"> 姓名:<inputtype=“text”name=“txtName”>性別:<inputtype="radio"name="rSex"value="男">男

<inputtype="radio"name="rSex"value="女">女<inputtype=“submit”name=“btnSmt”value=“確定”></form>(1)表單輸入頁(yè)面<%@pagelanguage=“java”

contentType="text/html;charset=gb2312"%><%StringstrName=“”;

request.setCharacterEncoding("gb2312");strName=request.getParameter("txtName");%><%=“姓名:”+strName%>解決方法一改變r(jià)equest的charset,提取參數(shù)值之前使用一次page指令的charset設(shè)置不可錯(cuò)<%@pagelanguage=“java”

contentType="text/html;charset=gb2312"%><%StringstrName=“”;

strName=request.getParameter("txtName");

strName

=

newString(strName.getBytes("ISO-8859-1"),“gb2312");%><%=“姓名:”+strName%>解決方法二演示運(yùn)行ex12_原charset,不可寫(xiě)錯(cuò)新charset將變量值的charset從舊變?yōu)樾驴蛻?hù)端responserequestTomcat(JSP容器)web服務(wù)器*.jsp---------------response3、response響應(yīng)對(duì)象與字符解碼頁(yè)面page指令的charset指定了response的編碼字符集。如果沒(méi)有指定字符集的話,就默認(rèn)使用ISO-8859-1。它控制輸出時(shí)的編(解)碼字符集??!charset解碼<%@pagelanguage=“java”contentType="text/html;charset=gb2312"%>3、response對(duì)象與字符解碼字符10011011request編碼response解碼字符集由page指令的charset設(shè)置charset指定了顯示時(shí)的字符集

<%@pagelanguage=“java”

contentType="text/html;charset=gb2312"%>頁(yè)面page指令的charset指定了response使用的字符集。如果沒(méi)有指定字符集的話,就默認(rèn)使用ISO-8859-1。response(page指令)控制輸出顯示時(shí)的字符集?。∪绻址淖址蛂esponse(page指令)的字符集不一樣,就會(huì)顯示亂碼。3、response對(duì)象與字符解碼<%@pagelanguage=“java”

contentType=“text/html”%><%//改變charset和構(gòu)造字符集,對(duì)比分析

StringstrName=request.getParameter("txtName");strName=newString(strName.getBytes("ISO-8859-1"),"gb2312");%>

<%=“姓名:”+strName%>3、response對(duì)象與字符解碼-范例分析有亂碼嗎?分析<%者@pa肺gela完ng重ua鎖ge凈=綿“求ja公va鉆”co濤nt耀en被tT璃yp汪e=“t熱ex鍋t/餓ht嚷ml摟”%吵><%//改變ch福ar抖se栽t和構(gòu)耽造字濃符集偏,對(duì)手比分蹈析St尿ri爹ngst什rN臂am扔e=re加qu肚es隊(duì)t.ge萍tP缺ar動(dòng)am捆et午er艘("認(rèn)tx六tN銹am起e");st圣rN漿am錦e=ne壩wSt俯ri橋ng鴉(st泥rN兵am依e.色ge獲tB因yt虹es狡("IS多O-孩88余59醉-1")窗,迅"gb缸23戲12")疲;%><%宵=“姓名慚:”勵(lì)+st消rN考am從e%>3、re陶sp口on質(zhì)se對(duì)象迅與字驅(qū)符解巧碼勝-范牌例分猶析分析紀(jì):pa歐ge的ch扣ar斥se果t是?種變量果的字爭(zhēng)符集南是?糟判斷敗:是充否相輛同?演示緩運(yùn)行ex奇12查_(kāi)r戴eq胞ue婦st<%露@爭(zhēng)p喇a(chǎn)g撈ela饑ng負(fù)ua奏ge夸=絲式“偉ja集va免”co仔nt薄en蠶tT臂yp豆e=峰"t想ex壟t/捆ht善ml身;ch航ar銀se準(zhǔn)t=暮gb裹23寨12支"居%>在js撒p中構(gòu)造掙的St罷ri悼ng以及扮頁(yè)面樂(lè)本身懂的St盛ri娃ng,如亭果沒(méi)砍有明霜確指狂定St紛ri醋ng的構(gòu)著造字品符集查,St饑ri疑ng使用焦的字符珠集就溉是ch策ar智se鬼t指定婦的;如令果ch弱ar爛se有t沒(méi)有經(jīng)指定抽字符表集的竄話,林那么捷就是賢用IS呢O-規(guī)88菊59撐-1。這兩崗種St伍ri諸ng區(qū)別差于從re錢(qián)qu從es戲t和數(shù)何據(jù)庫(kù)中獲慕取的植字符清。4、JS西P中構(gòu)結(jié)造的St招ri造ng與字?jǐn)_符編省碼<%廉@東p賢ag垃e疾l陶an眨gu婚ag忌e庸=美“j針av目a”co癢nt電en捏tT井yp舌e=擔(dān)"t法ex彎t/壤ht銹ml縣;ch貫ar址se萬(wàn)t=漠gb凳23聽(tīng)12江"%>改變ch放ar塊se電t和構(gòu)亂造字擦符集蹲,對(duì)市比JS腥P構(gòu)造蹲字符錫的客滲戶(hù)端名顯示<%St鞠ri礎(chǔ)ngst雅rN準(zhǔn)am訊e1=“劉杰削”;st調(diào)rN溝am般e1=ne鬼w欣St裝ri辣ng慶(st猜rN膊am釘e1.g新et灣By并te灣s(睜"IS辜O-肅88么59亂-1")純,框"gb細(xì)23模12")詢(xún);St冶ri構(gòu)ngst膊rN擊am纖e2=ne豎w螺S閥tr近in糖g(“劉杰株”)廊;%><%保=清“姓名?。骸北I+st朵rN閥am稠e1%><%雪=謠“姓名涼:”革+st麻rN眉am舊e2%>4、JS大P中構(gòu)螞造的St期ri賢ng與字航符編神碼頁(yè)面魚(yú)本身戚的字漏符頁(yè)面寒構(gòu)造蔑的字詳符<%茄@遞p銀ag蟻e箭l笛a(bǔ)n捏gu掛ag響e獎(jiǎng)=厭“j堤av具a”co零nt詞en肚tT堵yp技e=投"t鉗ex身t/牙ht蕩ml掠;ch糟ar娛se呆t=尸gb燦23搭12震"%>改變ch巷ar劑se談t和構(gòu)煎造字血符集勝,對(duì)碧比JS智P構(gòu)造天字符衛(wèi)的客覆戶(hù)端恐顯示<%St少ri絨ngst挖rN嫁am攀e1=“劉杰講”;st誤rN現(xiàn)am卸e1=ne舟w頭St秘ri協(xié)ng儀(st病rN泛am窗e1.g翻et朱By食te迷s(尸"IS禮O-碰88皆59倡-1")獨(dú),站"gb纏23鄰12")只;St啦ri蕩ngst更rN專(zhuān)am曲e2=ne失w登S稀tr削in媽g(“劉杰績(jī)”)粘;%><%畜=領(lǐng)“姓名基:”幕+st般rN奮am俯e1%><%目=明“姓名猜:”日+st勻rN派am白e2%>4、JS截P中構(gòu)撈造的St睜ri昂ng與字倦符編毒碼有亂矩碼嗎朋?分析<%載@閱p還ag免e濾l宴an蜻gu碎ag端e固=存“j蛾av役a”co績(jī)nt級(jí)en馬tT輛yp撈e=糖"t刺ex裁t/鏈ht本ml亡;ch免ar攤se拍t=葵gb道23比12笑"%>改變ch防ar放se捆t和構(gòu)亂造字厚符集倉(cāng),對(duì)暖比JS等P構(gòu)造而字符廈的客誼戶(hù)端蹈顯示<%St斥ri智ngst逐rN透am留e1=“劉杰揉”;st糠rN闖am肆e1=ne盡w考St蔽ri笛ng州(st胡rN潑am滔e1.g鞋et貝By哈te悉s(例"IS韻O-歌88套59蠶-1")店,芽"gb猾23異12")公;St蛛ri賀ngst擺rN停am餓e2=ne被w標(biāo)S怎tr田in陵g(“劉杰竄”)享;%><%付=迅“姓名西:”兆+st康rN嚷am胡e1%><%跟=飛“姓名械:”犁+st奧rN祥am衰e2%>4、JS幕P中構(gòu)格造的St楊ri優(yōu)ng與字袍符編效碼演示明運(yùn)行ex品13分析座:pa億ge的ch隔ar各se紗t是??jī)勺兞咳榈淖謨€符集開(kāi)是?肌判斷排:是者否相泰同?Co取ns盾ol痕e(cm勵(lì)d界面唯、To沙mc獸at日志各文件桐)使備用操庭作系峰統(tǒng)OS的默陶認(rèn)字仆符集裁,中展文系域統(tǒng)是GB建23風(fēng)12胃。這些繳界面媽自身甩的字饞符和勝構(gòu)造紙字符絕都是勉用OS默認(rèn)慨編碼爸字符縱集,顯示炊字符時(shí)也棄用默貧認(rèn)字纏符集午。5、Co敗ns臺(tái)ol祥e中的恒字符匹編碼<%庸@暗p盼ag恢e遮l誦an脹gu何ag母e子=王“j賞av稈a”co亡nt草en爭(zhēng)tT象yp賺e=帳"te領(lǐng)xt舟/h后tm膊l"久%><%//改變ch虧ar貞se逃t對(duì)比Co互ns策ol放e的字近符顯恨示St袍ri欺ngst迅rN次am梨e1=“劉杰復(fù)”;Sy鼓st浴em傭.記o召u(mài)t嘆.pr書(shū)in爽tl港n("姓名度是"+st朵rN孟am撐e1)墳;%>5、Co森ns耕ol烈e中的竄字符影編碼-范嗓例分浸析有亂殿碼嗎辭?分析<%窯@巴p鍛ag熟e椒l柿an趨gu風(fēng)ag眨e被=費(fèi)“j吩av槐a”co淡nt庸en詠tT壯yp張e=噴"te鄰xt棕/h兵tm上l"咬%><%//改變ch芳ar然se睬t對(duì)比Co辦ns奪ol葉e的字訂符顯框示St牛ri污ngst債rN翁am拒e1=“劉杰鑒”;Sy堂st命em厭.篩o黑ut雀.pr餐in淹tl尸n("姓名群是"+st疼rN飄am橋e1)其;%>5、Co財(cái)ns座ol注e中的弟字符料編碼-范愁例分個(gè)析演示少運(yùn)行ex籮13湊_分析隔:顯敘示用呆的ch殲ar啞se拾t是?先變量愈的字虎符集膀是?槐判斷掘:是侵否相床同?(1糾)Ja倍va和Se纏rv再le巷t文件側(cè)中構(gòu)造懇的St杯ri黎ng使

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論