• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            用C++來實現UrlEncode

            Posted on 2011-03-08 10:18 楊書童 閱讀(1997) 評論(0)  編輯 收藏 引用

             

            #ifndef __H_CURL_ENCODE_H__
            #define __H_CURL_ENCODE_H__
            /*
               URLEncode是這樣編碼的 
               1。數字和字母不變。
               2。空格變為"+"號。
               3。其他被編碼成"%"加上他們的ascii的十六進制,規律是這樣的 
               比如“啊”字 Ascii的十六進制是B0A1——>%B0%A1(Note:它是每個字節前加個%)。
             
            */

             
            #include 
            <iostream>
            #include 
            <string>
            #include 
            <fstream>
            #include 
            <ctype.h>
            #include 
            <stdlib.h>
             
            using namespace std;
             
            namespace ctool
            {
                
                typedef unsigned 
            char BYTE;
             
                inline BYTE toHex(
            const BYTE &x)
                
            {
                    
            return x > 9 ? x + 55: x + 48
                }

             
                inline 
            string URLEncode(const string &sIn)
                
            {
                
            // cout << "size: " << sIn.size() << endl;
                    string sOut;
                    
            for( size_t ix = 0; ix < sIn.size(); ix++ )
                    
            {       
                        BYTE buf[
            4]; 
                        memset( buf, 
            04 ); 
                        
            if( isalnum( (BYTE)sIn[ix] ) )
                        
            {       
                            buf[
            0= sIn[ix];
                        }

                        
            else if ( isspace( (BYTE)sIn[ix] ) )
                        
            {
                            buf[
            0= '+';
                        }

                        
            else
                        
            {
                            buf[
            0= '%';
                            buf[
            1= toHex( (BYTE)sIn[ix] >> 4 );
                            buf[
            2= toHex( (BYTE)sIn[ix] % 16);
                        }

                        sOut 
            += (char *)buf;
                    }

                    
            return sOut;
                }
            ;
            }

            #endif
            久久香蕉国产线看观看99| 欧美久久久久久精选9999| 婷婷久久香蕉五月综合加勒比| 久久亚洲AV成人无码软件| 狠狠色婷婷久久一区二区三区| 久久99精品久久久久子伦| 久久午夜无码鲁丝片午夜精品| 国产A三级久久精品| 99精品久久久久久久婷婷| 99久久做夜夜爱天天做精品| 国产精品久久久天天影视| 亚洲人成网站999久久久综合 | 久久久久女人精品毛片| 国产精品成人久久久久三级午夜电影| 久久精品综合网| 国产精品无码久久久久| 精品久久久久中文字幕日本| 久久丫忘忧草产品| 久久青青草原亚洲av无码| 伊人色综合久久| 国产情侣久久久久aⅴ免费| 亚洲欧洲中文日韩久久AV乱码| 色综合久久综精品| 精品久久久久久国产潘金莲 | 色偷偷88欧美精品久久久| 久久精品国产久精国产| 亚洲精品乱码久久久久久久久久久久 | 狠狠色丁香久久婷婷综合蜜芽五月| 亚洲精品乱码久久久久66| 国产精品久久久久免费a∨| 精品久久久久久久中文字幕| 精品久久久久久久| 久久成人国产精品二三区| 久久精品国产99国产精偷| 97r久久精品国产99国产精| 无码人妻久久一区二区三区 | 久久www免费人成精品香蕉| 热久久国产精品| 国产三级精品久久| 精品久久久久久无码国产| 久久久精品久久久久久|