亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? urlencoder.java

?? < JavaME核心技術最佳實踐>>的全部源代碼
?? JAVA
字號:
package com.j2medev.httpme.tools;import java.io.ByteArrayOutputStream;import java.io.IOException;import java.io.OutputStreamWriter;import java.io.UnsupportedEncodingException;/** * Utility class for  form encoding.this class is modified form java.net.URLEncoder so that it can work well in cldc env. * This class contains static methods * for converting a String to the <CODE>application/x-www-form-urlencoded</CODE> MIME * format. For more information about HTML form encoding, consult the HTML  * <A HREF="http://www.w3.org/TR/html4/">specification</A>.  * * <p> * When encoding a String, the following rules apply: * * <p> * <ul> * <li>The alphanumeric characters &quot;<code>a</code>&quot; through *     &quot;<code>z</code>&quot;, &quot;<code>A</code>&quot; through *     &quot;<code>Z</code>&quot; and &quot;<code>0</code>&quot;  *     through &quot;<code>9</code>&quot; remain the same. * <li>The special characters &quot;<code>.</code>&quot;, *     &quot;<code>-</code>&quot;, &quot;<code>*</code>&quot;, and *     &quot;<code>_</code>&quot; remain the same.  * <li>The space character &quot;<code>&nbsp;</code>&quot; is *     converted into a plus sign &quot;<code>+</code>&quot;. * <li>All other characters are unsafe and are first converted into *     one or more bytes using some encoding scheme. Then each byte is *     represented by the 3-character string *     &quot;<code>%<i>xy</i></code>&quot;, where <i>xy</i> is the *     two-digit hexadecimal representation of the byte.  *     The recommended encoding scheme to use is UTF-8. However,  *     for compatibility reasons, if an encoding is not specified,  *     then the default encoding of the platform is used. * </ul> * * <p> * For example using UTF-8 as the encoding scheme the string &quot;The * string &#252;@foo-bar&quot; would get converted to * &quot;The+string+%C3%BC%40foo-bar&quot; because in UTF-8 the character * &#252; is encoded as two bytes C3 (hex) and BC (hex), and the * character @ is encoded as one byte 40 (hex). * * @author  mingjava * @version 0.1 05/06/2006 * @since   httpme 0.1 */public class URLEncoder {        /** The characters which do not need to be encoded. */    private static boolean[] dontNeedEncoding;    private static String defaultEncName = "";    static final int caseDiff = ('a' - 'A');    static {        dontNeedEncoding = new boolean[256];        int i;        for (i = 'a'; i <= 'z'; i++) {            dontNeedEncoding[i] = true;        }        for (i = 'A'; i <= 'Z'; i++) {            dontNeedEncoding[i] = true;        }        for (i = '0'; i <= '9'; i++) {            dontNeedEncoding[i] = true;        }        dontNeedEncoding[' '] = true; // encoding a space to a + is done in the encode() method        dontNeedEncoding['-'] = true;        dontNeedEncoding['_'] = true;        dontNeedEncoding['.'] = true;        dontNeedEncoding['*'] = true;        defaultEncName = System.getProperty("microedition.encoding");        if(defaultEncName == null || defaultEncName.trim().length() == 0){            defaultEncName = "UTF-8";        }    }        public static final int MIN_RADIX = 2;        /**     * The maximum radix available for conversion to and from strings.     */    public static final int MAX_RADIX = 36;    /**     * The class is not meant to be instantiated.     */    private URLEncoder() { }            /**     * Translates a string into &quot;<CODE>x-www-form-urlencoded</CODE>&quot;     * format.This method uses the platform's default encoding     * as the encoding scheme to obtain the bytes for unsafe characters.     *     * @param  s the string to be translated.     *     * @return The resulting string.     */    public static String encode(String s) {        String str = null;        str = encode(s, defaultEncName);        return str;    }       /**     * Translates a string into <code>application/x-www-form-urlencoded</code>     * format using a specific encoding scheme. This method uses the     * supplied encoding scheme to obtain the bytes for unsafe     * characters.     * <p>     * <em><strong>Note:</strong> The <a href=     * "http://www.w3.org/TR/html40/appendix/notes.html#non-ascii-chars">     * World Wide Web Consortium Recommendation</a> states that     * UTF-8 should be used. Not doing so may introduce     * incompatibilites.</em>     *     * @param   s   <code>String</code> to be translated.     * @param   enc   The name of a supported character encoding such as UTF-8     * @return  the translated <code>String</code>.     */    public static String encode(String s, String enc) {                boolean needToChange = false;        boolean wroteUnencodedChar = false;        int maxBytesPerChar = 10; // rather arbitrary limit, but safe for now        StringBuffer out = new StringBuffer(s.length());        ByteArrayOutputStream buf = new ByteArrayOutputStream(maxBytesPerChar);        OutputStreamWriter writer = null;        try {            writer = new OutputStreamWriter(buf, enc);        } catch (UnsupportedEncodingException ex) {            try {                writer = new OutputStreamWriter(buf,defaultEncName);            } catch (UnsupportedEncodingException e) {                //never reach            }        }                for (int i = 0; i < s.length(); i++) {            int c = (int) s.charAt(i);            //System.out.println("Examining character: " + c);            if (c <256 && dontNeedEncoding[c]) {                if (c == ' ') {                    c = '+';                    needToChange = true;                }                //System.out.println("Storing: " + c);                out.append((char)c);                wroteUnencodedChar = true;            } else {                // convert to external encoding before hex conversion                try {                    if (wroteUnencodedChar) { // Fix for 4407610                        writer = new OutputStreamWriter(buf, enc);                        wroteUnencodedChar = false;                    }                    if(writer != null)                        writer.write(c);                    /*                     * If this character represents the start of a Unicode                     * surrogate pair, then pass in two characters. It's not                     * clear what should be done if a bytes reserved in the                     * surrogate pairs range occurs outside of a legal                     * surrogate pair. For now, just treat it as if it were                     * any other character.                     */                    if (c >= 0xD800 && c <= 0xDBFF) {                        /*                          System.out.println(Integer.toHexString(c)                          + " is high surrogate");                         */                        if ( (i+1) < s.length()) {                            int d = (int) s.charAt(i+1);                            /*                              System.out.println("\tExamining "                              + Integer.toHexString(d));                             */                            if (d >= 0xDC00 && d <= 0xDFFF) {                                /*                                  System.out.println("\t"                                  + Integer.toHexString(d)                                  + " is low surrogate");                                 */                                writer.write(d);                                i++;                            }                        }                    }                    writer.flush();                } catch(IOException e) {                    buf.reset();                    continue;                }                byte[] ba = buf.toByteArray();                for (int j = 0; j < ba.length; j++) {                    out.append('%');                    char ch = forDigit((ba[j] >> 4) & 0xF, 16);                    if (isLetter(ch)) {                        ch -= caseDiff;                 }                    out.append(ch);                                     ch = forDigit((ba[j] & 0xF), 16);                   //ch = forDigit(ba[j] & 0xF, 16);                    if (isLetter(ch)) {                        ch -= caseDiff;                    }                    out.append(ch);                }                buf.reset();                needToChange = true;            }        }                return (needToChange? out.toString() : s);    }        private static boolean isLetter(char c){        if( (c >= 'a' && c <= 'z') || (c >='A' && c <= 'Z'))            return true;        return false;    }        private static char forDigit(int digit,int radix){        if ((digit >= radix) || (digit < 0)) {            return '\0';        }        if ((radix < MIN_RADIX) || (radix > MAX_RADIX)) {            return '\0';        }        if (digit < 10) {            return (char)('0' + digit);        }        return (char)('a' - 10 + digit);    }}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
蜜桃精品在线观看| 一区二区三区色| 蜜臀av在线播放一区二区三区| 国产盗摄女厕一区二区三区| 欧美视频在线播放| 日韩美女精品在线| 国产成人鲁色资源国产91色综| 欧美精品丝袜久久久中文字幕| 1000部国产精品成人观看| 久久精品国产精品亚洲红杏| 欧美三区免费完整视频在线观看| 国产精品毛片久久久久久久| 国内久久精品视频| 欧美一区二区日韩| 五月综合激情网| 91老司机福利 在线| 国产精品视频免费看| 国内精品国产三级国产a久久| 9191精品国产综合久久久久久| 一区二区在线免费| 99这里只有久久精品视频| 久久精品欧美日韩| 久久99久久精品| 91精品国产福利在线观看| 夜夜嗨av一区二区三区网页 | 亚洲成av人片在线观看| 一本大道av伊人久久综合| 国产无人区一区二区三区| 韩国女主播一区二区三区| 日韩视频一区在线观看| 日韩精品免费视频人成| 欧美日韩国产天堂| 亚洲在线观看免费| 色94色欧美sute亚洲13| 亚洲天堂2016| 91影院在线免费观看| 最近日韩中文字幕| 97成人超碰视| 亚洲精品视频在线看| 色综合久久88色综合天天6| 亚洲色图欧洲色图婷婷| 99久久精品国产导航| 亚洲图片你懂的| 色网综合在线观看| 一区二区三区免费在线观看| 色婷婷亚洲综合| 亚洲一区二区三区四区中文字幕| 欧美亚洲动漫另类| 亚洲午夜久久久久久久久电影院 | 成人免费黄色大片| 国产精品久久久久久妇女6080| 91丨porny丨户外露出| 久久国产人妖系列| 久久美女艺术照精彩视频福利播放| 国产一区视频网站| 日本一区二区三区电影| 成人综合在线视频| 亚洲欧美另类久久久精品2019| 91丨九色丨黑人外教| 亚洲一区二区三区四区五区黄| 在线精品亚洲一区二区不卡| 亚洲不卡一区二区三区| 日韩一区二区免费在线电影| 美女一区二区视频| 精品日韩成人av| 国产成人av电影在线播放| 国产精品三级av| 欧美性生活久久| 开心九九激情九九欧美日韩精美视频电影 | 亚洲私人黄色宅男| 91久久一区二区| 秋霞电影网一区二区| 久久久精品欧美丰满| 99久久777色| 性久久久久久久久久久久| 精品欧美乱码久久久久久1区2区| 国产a久久麻豆| 亚洲精品国久久99热| 日韩一级片网址| 成人sese在线| 午夜电影一区二区| 国产亚洲成av人在线观看导航| 色欧美日韩亚洲| 精品中文字幕一区二区小辣椒 | 欧美日韩一区二区三区四区五区| 日韩成人av影视| 亚洲国产激情av| 欧美日韩在线电影| 国产宾馆实践打屁股91| 亚洲一二三区视频在线观看| 亚洲精品在线电影| 99免费精品视频| 奇米一区二区三区| 亚洲视频免费观看| 日韩一级黄色片| av电影天堂一区二区在线观看| 日日摸夜夜添夜夜添国产精品| 国产偷国产偷精品高清尤物| 欧美日韩免费视频| 国产激情精品久久久第一区二区| 亚洲一二三四在线| 久久精品视频在线看| 欧美久久久一区| 成人av小说网| 美女网站色91| 一区二区三区中文免费| 久久免费电影网| 欧美军同video69gay| av一区二区三区四区| 久久99精品国产.久久久久久 | www日韩大片| 欧美日韩精品一区二区三区 | 日韩精品电影在线| 亚洲天堂免费看| 久久久久久综合| 91精品国产91久久综合桃花| 日本高清成人免费播放| 国产电影一区二区三区| 久久国产尿小便嘘嘘| 午夜欧美2019年伦理 | 日韩欧美国产一二三区| 欧洲av在线精品| av一本久道久久综合久久鬼色| 久久精品国产精品青草| 日一区二区三区| 亚洲一区二区综合| 亚洲欧洲精品天堂一级| 久久久久久久综合色一本| 日韩一级免费观看| 欧美日韩精品欧美日韩精品一 | 亚洲成人av一区二区| 欧美成人猛片aaaaaaa| 欧美日韩高清一区二区三区| 波多野结衣一区二区三区| 午夜激情久久久| 亚洲综合色噜噜狠狠| 国产精品美女久久久久久久久久久 | 欧美激情一区在线观看| 日韩一本二本av| 欧美系列亚洲系列| 91婷婷韩国欧美一区二区| 国产一区二区三区av电影| 日韩精品久久理论片| 亚洲一二三四区不卡| 中文在线免费一区三区高中清不卡| 久久久精品影视| 337p粉嫩大胆噜噜噜噜噜91av| 欧美日韩一级片在线观看| 色狠狠色噜噜噜综合网| 91老师片黄在线观看| jiyouzz国产精品久久| 国产精品888| 国精产品一区一区三区mba桃花 | 3d动漫精品啪啪| 99国内精品久久| 94-欧美-setu| 北岛玲一区二区三区四区| 成人一区二区三区在线观看| 国产毛片一区二区| 国产一区在线精品| 狠狠色综合播放一区二区| 蜜桃视频在线观看一区| 免费观看在线综合色| 蜜臀久久久久久久| 日本不卡免费在线视频| 舔着乳尖日韩一区| 日韩va亚洲va欧美va久久| 美女脱光内衣内裤视频久久网站| 五月天中文字幕一区二区| 亚洲成年人网站在线观看| 亚洲香肠在线观看| 蜜臀久久99精品久久久久宅男 | 亚洲国产精品t66y| 国产精品视频观看| 日韩一区中文字幕| 欧美激情在线看| 久久婷婷国产综合精品青草| 精品区一区二区| 欧美高清www午色夜在线视频| 欧美日韩精品一二三区| 7777精品伊人久久久大香线蕉的 | 尤物在线观看一区| 亚洲嫩草精品久久| 亚洲日本韩国一区| 亚洲黄色小视频| 一区二区三区四区激情| 日韩和欧美一区二区| 久久激五月天综合精品| 国内成人免费视频| 国产不卡视频一区二区三区| 色av一区二区| 91.xcao| 久久免费午夜影院| 国产精品网站在线播放| 亚洲丝袜另类动漫二区| 亚洲一区二区三区影院| 日韩电影免费一区| 不卡的电视剧免费网站有什么| 色婷婷精品久久二区二区蜜臀av | 久久er99热精品一区二区|