隨筆-40  評(píng)論-66  文章-0  trackbacks-0

          java 中文亂碼處理。

           
          參考
          http://china.eceel.com/article/study_for_character_encoding_java.htm
          http://upurban.com/bbs/viewtopic.php?t=246

          1。什么是utf-8,什么是ISO-8859-1,什么是GB2312,還有什么是unicode

          2。java 程序的字符的表示格式

          3。jsp 程序中文顯示處理實(shí)例

          3。1
          <%@ page  pageEncoding="ISO-8859-1"%>和<%@ page  pageEncoding="GB2312"%>和<%@ page 

          pageEncoding="UTF-8"%>各自的意思是什么,他們是否只對(duì)post提交有效!
          request.setCharacterEncoding("UTF-8")是什么意思?有什么區(qū)別?還有

          response.setCharacterEncoding("UTF-8"),優(yōu)先于下邊
          <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

          setCharacterEncoding()該函數(shù)用來(lái)設(shè)置http請(qǐng)求或者相應(yīng)的編碼。

          對(duì)于request,是指提交內(nèi)容的編碼,指定后可以通過(guò)getParameter()則直接獲得正確的字符串,如果不

          指定,則默認(rèn)使用iso8859-1編碼,需要進(jìn)一步處理。參見(jiàn)下述"表單輸入"。值得注意的是在執(zhí)行

          setCharacterEncoding()之前,不能執(zhí)行任何getParameter()。java doc上說(shuō)明:This method must be

          called prior to reading request parameters or reading input using getReader()。而且,該指定

          只對(duì)POST方法有效,對(duì)GET方法無(wú)效。分析原因,應(yīng)該是在執(zhí)行第一個(gè)getParameter()的時(shí)候,java將會(huì)

          按照編碼分析所有的提交內(nèi)容,而后續(xù)的getParameter()不再進(jìn)行分析,所以setCharacterEncoding()無(wú)

          效。而對(duì)于GET方法提交表單是,提交的內(nèi)容在URL中,一開(kāi)始就已經(jīng)按照編碼分析所有的提交內(nèi)容,

          setCharacterEncoding()自然就無(wú)效。

          對(duì)于response,則是指定輸出內(nèi)容的編碼,同時(shí),該設(shè)置會(huì)傳遞給瀏覽器,告訴瀏覽器輸出內(nèi)容所采用的

          編碼。
           
          3.2. jsp輸出

          指定文件輸出到browser是使用的編碼,該設(shè)置也應(yīng)該置于文件的開(kāi)頭。例如:<%@ page

          contentType="text/html; charset= GBK" %>。該設(shè)置和response.setCharacterEncoding("GBK")等效。

           

          4。java EE程序利用過(guò)濾器 處理中文問(wèn)實(shí)例
          提交數(shù)據(jù)的編碼格式
          tomcat默認(rèn)提交格式是ISO-8859-1
          可以通過(guò)設(shè)置過(guò)濾器(只針對(duì)post提交)或修改server.xml 的URIencoding 編碼格式(只針對(duì)get提交)

          達(dá)到你想要的 數(shù)據(jù)提交編碼格式。

           

          總結(jié)

          ---by mylu 18:26 2007-5-20

          posted on 2007-05-20 22:36 Super·shen BLOG 閱讀(1525) 評(píng)論(0)  編輯  收藏 所屬分類: JAVA技術(shù)
          主站蜘蛛池模板: 齐河县| 汨罗市| 恩平市| 株洲市| 葫芦岛市| 鹤壁市| 荃湾区| 双城市| 抚松县| 永年县| 中超| 雷波县| 荔波县| 东安县| 宁都县| 青州市| 兴安盟| 犍为县| 昌乐县| 唐海县| 兴安县| 吐鲁番市| 汪清县| 永昌县| 依安县| 聂拉木县| 徐州市| 高州市| 长武县| 卢氏县| 筠连县| 北宁市| 景德镇市| 宜宾市| 金坛市| 临朐县| 高青县| 大冶市| 五指山市| 安化县| 乐平市|