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

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

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

    紀(jì)念SUN

    Powered By Andy

    URL編碼

    package cn.struts.util;

    import java.util.Arrays;

    /**
     * 字符編碼
     */
    public class URLEnCodeing {

        private static final char[] c = { '\\', '/', ':', '?', '&'};

        /**
         * URL 編碼 http://localhost:8080/webproject/中國(guó)測(cè)試
         *
         * @param url http://localhost:8080/webproject/%4e2d%56fd%6d4b%8bd5
         *
         * @return
         */
        public static String escape(String url) {
     int length = url.length();
     StringBuilder sb = new StringBuilder(length);
     char currentChar;
     for (int i = 0; i < length; i++) {
         // 當(dāng)前字符是不是數(shù)字,或字母,特殊字符'\\', '/', ':'
         currentChar = url.charAt(i);
         if(currentChar == 37)
      throw new RuntimeException("不能是%");
         if (currentChar <= 127) {
      sb.append(currentChar);
         } else {
      sb.append("%");
      sb.append(Integer.toString(currentChar, 16));
         }
     }

     return sb.toString();
        }

        /**
         * URL 編碼 http://localhost:8080/webproject/中國(guó)測(cè)試
         *
         * @param url http://localhost:8080/webproject/%4e2d%56fd%6d4b%8bd5?time=11234566&name=%4e16%754c
         *
         * @return
         */
        public static String unEscape(String url) {
     int length = url.length();
     StringBuilder sb = new StringBuilder(length);
     String[] str = url.split("%");
     sb.append(str[0]);
     // %4e2d //"8bd5?time=11234566&name="
     for (int i = 1; i < str.length; i++) {
         String s = str[i];
         if(s.length() > 4){
      sb.append((char)Integer.parseInt(s.substring(0, 4), 16));
      sb.append(s.substring(4));
         }else
         sb.append((char) Integer.parseInt(str[i], 16));
     }
     return sb.toString();
        }

        public static void main(String[] args) {
     String value = "http://localhost:8080/webpr&oject/中國(guó)測(cè)試?time=11234566&name=世界";
     String url = "http://localhost:8080/webp25r&oject/%4e2d%56fd%6d4b%8bd5?time=11234566&name=%4e16%754c";
     System.out.println(URLEnCodeing.escape(value));
     System.out.println(URLEnCodeing.unEscape(url));
     System.out.println(Integer.toString((char)'%',16));
     

        }

    }

    posted on 2010-02-22 18:57 Powered By Andy 閱讀(2004) 評(píng)論(0)  編輯  收藏


    只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     

    導(dǎo)航

    <2010年2月>
    31123456
    78910111213
    14151617181920
    21222324252627
    28123456
    78910111213

    統(tǒng)計(jì)

    常用鏈接

    留言簿

    隨筆檔案

    搜索

    最新評(píng)論

    閱讀排行榜

    評(píng)論排行榜

    主站蜘蛛池模板: 亚洲人成网站影音先锋播放| 国产精品无码素人福利免费| 中文字幕亚洲激情| 美女露隐私全部免费直播| 曰皮全部过程视频免费国产30分钟 | 亚洲第一页在线观看| 蜜桃成人无码区免费视频网站| 亚洲AV无码一区二区三区DV| 在线观看特色大片免费网站| 亚洲嫩模在线观看| 免费视频爱爱太爽了| 国产v亚洲v天堂a无| 日韩免费a级在线观看| 久久久久亚洲国产AV麻豆| 国产伦一区二区三区免费 | 一道本不卡免费视频| 亚洲老妈激情一区二区三区| 国产一级片免费看| 亚洲成a人片在线看| 国产性生交xxxxx免费| 精品多毛少妇人妻AV免费久久| 亚洲国产香蕉碰碰人人| 国产福利在线免费| 日韩亚洲人成网站| 亚洲av永久无码精品网站| 无码少妇一区二区浪潮免费| 美女黄色毛片免费看| 亚洲视频.com| 国产男女猛烈无遮挡免费视频网站 | 91精品免费不卡在线观看| 亚洲中文字幕无码一去台湾| 亚洲av无码乱码在线观看野外| 麻豆精品成人免费国产片| 亚洲五月综合网色九月色| 亚洲国产专区一区| 182tv免费视视频线路一二三| 国产精品亚洲专区一区| 亚洲AV日韩精品久久久久久久| 成人毛片18女人毛片免费96| 99麻豆久久久国产精品免费| 久久精品国产亚洲αv忘忧草|