<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    我的漫漫程序之旅

    專注于JavaWeb開發(fā)
    隨筆 - 39, 文章 - 310, 評(píng)論 - 411, 引用 - 0
    數(shù)據(jù)加載中……

    jsp URL中文處理的幾種方式

    <%public String GBToISO(String str)       
    {try{
    byte temp[]=str.getBytes("GB2312");       
    str
    =new String(temp,"ISO-8859-1");       
    return str;       
    }catch(Exception e){return str;}}       
          
    response.sendRedirect(GBToISO(
    "errmsg.jsp?errmsg=添加客戶信息成功"));
    %>     
    超連接中profession為中文
    <href="cust_totallist.jsp?action=delete&page=<%=intCurrentPage%>&cust_id=<%=rs.getInt("id")%>&profession=<%=java.net.URLEncoder.encode(profession,"ISO-8859-1")%>">刪除</a>       
    ////////////cust_totallist.jsp中取profession值       
    String profession=java.net.URLDecoder.decode(request.getParameter("profession").trim(),"ISO-8859-1");  
    可見,URL中編碼格式為ISO-8859-1,處理中文只需將編碼格式轉(zhuǎn)換ISO-8859-1
    方法一:
    http://xxx.do?ptname='我是中國人'
    String strPtname = request.getParameter("ptname");    
    strPtname 
    = new String(strPtname.getBytes("ISO-8859-1"), "UTF-8");    
    方法二:
    <%@ page contentType="text/html;charset=gb2312" %>    
    <a href="ds.jsp?url=<%=java.net.URLEncoder.encode("編碼的是這里","GB2312")%>">點(diǎn)擊這里</a>    
    <%    
    //request.setCharacterEncoding("GBK");    
    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);    
    }
        
    %>    

    public String chinatoString(String str)    
    {    
    String s
    =str;    
    try    
    {    
    byte tempB[]=s.getBytes("ISO-8859-1");    
    s
    =new String(tempB);    
    return s;    
    }
        
    catch(Exception e)    
    {    
    return s;    
    }
        
    }
        

    function URLencode(sStr)    
    {    
    return escape(sStr).    
    replace(
    /\+/g, '%2B').    
    replace(
    /\"/g,'%22').    
    replace(/\'/g, '%27').    
    replace(/\//g,'%2F');    
    }
        

    方法三:
    如果用jstl的話,可以自己寫一個(gè)el的function,調(diào)用URLEncoder.encode來編碼。

    IE缺省對(duì)URL后面的參數(shù)是不編碼發(fā)送的,但是tomat缺省是按ISO8859-1來進(jìn)行URL解碼,因此才會(huì)出現(xiàn)上述錯(cuò)誤。好的做法是:
    1、在URL參數(shù)中確保用UTF-8編碼之,方法可以用js函數(shù)encodeURI(),或調(diào)用自定義的el function;
    2、設(shè)置server.xml中的Connector熟悉URIEncoding="UTF-8",確保解碼格式與編碼格式統(tǒng)一;
    方法四:
    在jsp的結(jié)尾加上:
    <script>    
    for(var i=0;i<document.links.length;i++){    
    document.links[i].href
    =encodeURI(document.links[i].href);    
    }
        
    </script>    
    在action中:

    String s=request.getParameter("s"); 
    s
    =new String(s.getBytes("iso-8859-1"),"gbk"); 


    posted on 2009-07-08 11:35 々上善若水々 閱讀(3561) 評(píng)論(0)  編輯  收藏 所屬分類: JavaWeb

    主站蜘蛛池模板: 亚洲理论在线观看| 国产91精品一区二区麻豆亚洲| 国产亚洲欧美日韩亚洲中文色| 亚洲精品国产成人片| 最近免费中文字幕4| a毛片全部免费播放| 国产免费一级高清淫曰本片| caoporn国产精品免费| 亚洲深深色噜噜狠狠网站| 亚洲不卡1卡2卡三卡2021麻豆| 奇米影视亚洲春色| 亚洲国产精品无码一线岛国| 久久久久久a亚洲欧洲aⅴ| 免费看国产曰批40分钟| 97无码免费人妻超级碰碰碰碰| 好久久免费视频高清| 95老司机免费福利| 99久久免费国产特黄| 日本视频在线观看永久免费| 1000部禁片黄的免费看| 91视频免费观看| 成人嫩草影院免费观看| 中文字幕免费在线看| 91九色老熟女免费资源站| 国产午夜精品免费一区二区三区| 日韩久久无码免费毛片软件 | 国产人成网在线播放VA免费| 男女一进一出抽搐免费视频 | 国产av无码专区亚洲av桃花庵| 亚洲 另类 无码 在线| 伊人久久大香线蕉亚洲五月天| 免费大香伊蕉在人线国产| 亚洲日韩VA无码中文字幕 | 新最免费影视大全在线播放| 亚洲欧美日韩中文二区| 四虎影视永久在线精品免费| 久久精品国产这里是免费| 黄色网址免费观看| 日韩精品电影一区亚洲| 久久久久无码精品亚洲日韩| 亚洲综合偷自成人网第页色|