posts - 64,  comments - 9,  trackbacks - 0

          jsp代碼中,使用到了java.net.URLEncoder.encode()對要傳遞的中文進行編碼。可是接收到的字符串卻是亂碼。最令人抓狂的就是這段代碼在有的機器上運行正常,可是在某些機器上死活也不能正常運行。因為對jsp和網頁都不是很熟所以查了很久才發現原因。

          最后發現是這段代碼沒有規范的使用java.net.URLEncoder,雖然使用了java.net.URLEncoder.encode()對要傳遞的中文進行編碼,可是接收頁面接收時沒有使用java.net.URLEncoder.decode()進行解碼。導致在有的機器上運行正常,而有的就出錯。

           

          下面貼一下解決這個問題參考的文章:

          使用java.net.URLEncoder.encode()可以對要傳遞的中文進行編碼

          a.在傳參數之前先把參數進行轉碼:java.net.URLEncoder.encode(param);
          取值時用語句java.net.URLDecoder.decode(param);再轉回中文
          b.在你的Tomcat目錄-->conf目錄-->server.xml里找出這段:
                 <Connector
                   port="8080"               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
                         enableLookups="false" redirectPort="8443" acceptCount="100"
                         debug="0" connectionTimeout="20000"
                         disableUploadTimeout="true"
          <!--在里邊加上這個參數-->
          URIEncoding="gb2312"
               />

           例如:
          <%@ page contentType="text/html;charset=gb2312" %>

          <a href="ds.jsp?url=<%=java.net.URLEncoder.encode("編碼的是這里","GB2312")%>">點擊這里</a>


          <%
          if(request.getParameter("url")!=null)
          {

          str=request.getParameter("url");
          str=java.net.URLDecoder.decode(str,"GB2312");
          str=new String(str.getBytes("ISO-8859-1"));
          out.print(str);
          }

          %>

          若,字符編碼為utf-8也可以實現.或者在此段代碼中,不寫出字符編碼也可以(只寫一個參數)。

          posted on 2010-03-23 10:41 super_nini 閱讀(16161) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          <2010年3月>
          28123456
          78910111213
          14151617181920
          21222324252627
          28293031123
          45678910

          常用鏈接

          留言簿

          隨筆檔案

          文章檔案

          相冊

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 苍梧县| 云梦县| 阿坝县| 拜城县| 抚宁县| 睢宁县| 且末县| 古蔺县| 田东县| 哈密市| 四川省| 永济市| 蒲江县| 天柱县| 天长市| 潮安县| 丰台区| 光泽县| 罗甸县| 临洮县| 宜兰县| 大城县| 青阳县| 湖南省| 万州区| 安陆市| 三亚市| 哈密市| 平南县| 晋中市| 鄱阳县| 景德镇市| 博乐市| 衡阳市| 吉木乃县| 淮滨县| 敦化市| 西贡区| 正定县| 永康市| 铜梁县|