• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      試論JSP技術(shù)中文亂碼的原因及解決方法

      2016-07-06 23:52:23曹亮
      科技尚品 2016年6期
      關(guān)鍵詞:解決方法

      曹亮

      摘 要:JSP技術(shù)是動(dòng)態(tài)網(wǎng)頁(yè)制作的關(guān)鍵,也是現(xiàn)今主流的動(dòng)態(tài)網(wǎng)頁(yè)制作技術(shù)。在網(wǎng)頁(yè)的設(shè)計(jì)和開(kāi)發(fā)過(guò)程中,經(jīng)常會(huì)出現(xiàn)一些中文亂碼的問(wèn)題,嚴(yán)重影響動(dòng)態(tài)網(wǎng)頁(yè)的開(kāi)發(fā)和使用。所以本文先分析了常見(jiàn)的中文編碼格式,然后從4個(gè)方面詳細(xì)闡述了中文亂碼的問(wèn)題及解決方法。

      關(guān)鍵詞:JSP技術(shù);中文亂碼;原因;解決方法

      由于在動(dòng)態(tài)網(wǎng)頁(yè)制作中,中文主要是利用特殊的字符編碼方式,因此在網(wǎng)頁(yè)制作中很容易產(chǎn)生亂碼問(wèn)題。利用JSP技術(shù)開(kāi)發(fā)的WEB平臺(tái)在任何一個(gè)操作系統(tǒng)之上都能使用,中文亂碼會(huì)給設(shè)計(jì)人員造成很大的困擾。由此可見(jiàn),解決中文亂碼問(wèn)題是JSP技術(shù)開(kāi)發(fā)動(dòng)態(tài)網(wǎng)頁(yè)必須解決的重要問(wèn)題。

      1 常見(jiàn)編碼格式

      (1)ISO-8859-1編碼,也稱(chēng)之為L(zhǎng)atin-1編碼。ASCII 編碼的128個(gè)字符顯然是不夠用的,因此ISO組織在此基礎(chǔ)上進(jìn)行了拓展,從 ISO-8859-1到ISO-8859-15,應(yīng)用最廣泛的是ISO-8859-1,主要因?yàn)镮SO-8859-1是單字節(jié)編碼。

      (2)Unicode編碼。Unicode是目前最統(tǒng)一的編碼格式,但是它卻不兼容其他任何編碼格式。另外,通常所說(shuō)的UTF-16,就是Unicode字符在計(jì)算機(jī)中存取的方法。

      (3)GBK編碼。它是GB2312的拓展,總共含有23 940 個(gè)碼位,能表示21 003個(gè)漢字,并且它與 GB2312編碼格式兼容。

      (4)UTF-8。它的主要原理是通過(guò)變長(zhǎng)技術(shù),使不同類(lèi)型的字符能夠由1~6個(gè)字節(jié)組成。

      2 亂碼問(wèn)題及解決對(duì)策

      中文亂碼問(wèn)題一般會(huì)出現(xiàn)兩種情況:一是在HTML中,二是在JSP動(dòng)態(tài)輸出中。造成中文亂碼的原因有多種,只有深入分析找到亂碼的位置和原因,才能解決問(wèn)題,提高動(dòng)態(tài)網(wǎng)頁(yè)制作效率。

      2.1 頁(yè)面亂碼問(wèn)題

      如果在進(jìn)行程序調(diào)試時(shí),在顯示界面該出現(xiàn)中文的地方,顯示的是字符或問(wèn)號(hào)。對(duì)這種情況的解決方案是,在jsp頁(yè)面的頭部加入以下代碼<%pagecontentType=”text/html;charset=gb2312”%>,如下列的程序:

      <%@ page language=”java” import=”java.util.*” %>

      中文顯示示例

      這是一個(gè)中文顯示示例:

      <%

      String str = “中文”;

      out.print(str);

      %>

      經(jīng)過(guò)瀏覽器顯示之后,本該出現(xiàn)中文顯示示例的中文字符,結(jié)果卻顯示了“? ? ? ?? ? ???? ? ?”這種符號(hào),在處理這種中文亂碼問(wèn)題時(shí),可以將jsp頭部改成<%@ page language=”java”import=”java.util.*”contentType=”text/html;charset=GB2312” %> 這樣中文漢字即可正常顯示。

      2.2 參數(shù)傳遞時(shí)出現(xiàn)亂碼問(wèn)題

      參數(shù)傳遞時(shí)出現(xiàn)亂碼問(wèn)題,只要在傳遞參數(shù)時(shí),進(jìn)行編碼轉(zhuǎn)換就可以解決。具體代碼為<%String str=newString(request.getParameter(“str”).getBytes(“iso-8859-1”),”gb2312”);%>。

      如下列程序:

      <%@ page language=”java” import=”java.util.*” contentType=”text/html;charset=gb2312”%>

      URL傳遞參數(shù)中文處理示例

      <%

      String param = request.getParameter(“param”);

      %>

      請(qǐng)點(diǎn)擊這個(gè)鏈接

      你提交的參數(shù)為:<%=param%>

      在程序運(yùn)行之后,有時(shí)會(huì)顯示提交的參數(shù)為???。這種亂碼在動(dòng)態(tài)網(wǎng)頁(yè)的設(shè)計(jì)開(kāi)發(fā)中經(jīng)常會(huì)發(fā)生。其解決方法是,在原來(lái)代碼中添加URI編碼設(shè)置URIEncoding=“gb2312”。這樣在進(jìn)行程序運(yùn)行之后,就能夠顯示正常的參數(shù)。

      2.3 表單亂碼問(wèn)題

      表單問(wèn)題產(chǎn)生的主要原因是提交表單的方法程序并不支持中文字符,通常默認(rèn)的編碼格式是ISO-8859-1。一般解決這種問(wèn)題的方法是,在頁(yè)面中或是sevlet中以及在過(guò)濾時(shí)進(jìn)行解決,如設(shè)置 request 和 response 的編碼(頁(yè)面編碼必須為 u8),或者是添加

      屬性。無(wú)論是采用哪種解決方法,都需要程序員根據(jù)實(shí)際的程序來(lái)選擇。

      2.4 瀏覽器不識(shí)別問(wèn)題

      瀏覽器不識(shí)別問(wèn)題的主要表現(xiàn)就是在提交中文字符時(shí)出現(xiàn)亂碼問(wèn)題,而提交英文字符時(shí)則顯示正常。產(chǎn)生這種問(wèn)題的主要原因是瀏覽器默認(rèn)的編碼格式和程序編碼格式不兼容,瀏覽器無(wú)法識(shí)別中文字符。解決這種問(wèn)題只須通過(guò)request.setCharacterEncoding(“gb2312”)對(duì)請(qǐng)求進(jìn)行統(tǒng)一編碼即可。這樣經(jīng)過(guò)編碼格式的統(tǒng)一之后,中文字符就會(huì)正常顯示。

      3 總結(jié)

      綜上所述,中文亂碼產(chǎn)生的主要原因是編碼格式的不統(tǒng)一,并且編碼格式之間基本不兼容。另外,在處理中文亂碼問(wèn)題時(shí),找到亂碼問(wèn)題的原因是解決問(wèn)題的關(guān)鍵。由此可見(jiàn),深入了解JSP技術(shù)是非常有必要的。

      參考文獻(xiàn)

      [1]徐珊.JSP技術(shù)中的中文亂碼成因與對(duì)策探析[J].山東工業(yè)技術(shù),2015,(19):220.

      [2]梅錦峰,陽(yáng)小蘭,錢(qián)程,等.JSP初學(xué)者遇到的中文亂碼問(wèn)題及解決方案[J].黑龍江科技信息,2016,(4):180.

      (作者單位:哈爾濱市南崗房產(chǎn)經(jīng)營(yíng)物業(yè)管理有限責(zé)任公司第一分公司)

      猜你喜歡
      解決方法
      新形勢(shì)下基層科技檔案管理工作初探
      商情(2016年40期)2016-11-28 10:52:26
      新形勢(shì)下離退休干部服務(wù)管理工作的問(wèn)題與思考
      鋁沖裁廢料堵塞的原因與解決方法探究
      導(dǎo)學(xué)案在高中數(shù)學(xué)教學(xué)中存在的問(wèn)題及解決方法
      小學(xué)班主任在班級(jí)管理中存在的問(wèn)題和解決方法探究
      南北橋(2016年10期)2016-11-10 17:02:08
      小學(xué)數(shù)學(xué)教學(xué)中存在的問(wèn)題及其解決方法
      淺談我國(guó)現(xiàn)階段農(nóng)村經(jīng)濟(jì)管理
      農(nóng)村移動(dòng)網(wǎng)絡(luò)覆蓋探討
      針對(duì)回轉(zhuǎn)式空氣預(yù)熱器漏風(fēng)問(wèn)題解決方案的研究
      高職英語(yǔ)教學(xué)中存在的問(wèn)題與建議
      壤塘县| 绥德县| 沁阳市| 宜宾县| 定兴县| 义乌市| 海林市| 辉县市| 文昌市| 南郑县| 岐山县| 和顺县| 遂昌县| 莱州市| 广昌县| 小金县| 福安市| 胶南市| 巢湖市| 平潭县| 集安市| 古交市| 德令哈市| 甘德县| 兴文县| 宜兰县| 攀枝花市| 江油市| 寿宁县| 普安县| 利川市| 娱乐| 凌云县| 高平市| 武隆县| 苏尼特右旗| 渭源县| 舞阳县| 景谷| 石城县| 攀枝花市|