asp.net UTF8 2 GB2312

1:

a:

public string ConvertToGb(char ch)
    {
        byte[] b;
        int b0, b1;
        string str = null;
        str += ch;
        b = Encoding.Default.GetBytes(str);
        char ch1, ch2, ch3, ch4;
        b0 = b[0];
        if (b0 % 16 < 10)
            ch1 = (char)('0' + b0 % 16);
        else
            ch1 = (char)('A' + b0 % 16 - 10);
        b0 = b0 / 16;
        if (b0 % 16 < 10)
            ch2 = (char)('0' + b0 % 16);
        else
            ch2 = (char)('A' + b0 % 16 - 10);
        b1 = b[1];
        if (b1 % 16 < 10)
            ch3 = (char)('0' + b1 % 16);
        else
            ch3 = (char)('A' + b1 % 16 - 10);
        b1 = b1 / 16;
        if (b1 % 16 < 10)
            ch4 = (char)('0' + b1 % 16);
        else
            ch4 = (char)('A' + b1 % 16 - 10);
        string constr = null;
        constr += "%" + ch2;
        constr += ch1;
        constr += "%" + ch4;
        constr += ch3;
        return constr;
    }

b:

string word = Request.QueryString["word"].ToString();
                byte[] b = System.Text.Encoding.Default.GetBytes(word);
                char[] d = System.Text.Encoding.Default.GetChars(b);
                for (int i = 0; i < d.Length; i++)
                {
                    keyword += ConvertToGb(d[i]);
                }

******************

2:HttpUtility.UrlEncode(key, Encoding.GetEncoding("GB2312"))

 

posted @ 2010-07-30 08:44  94cool  阅读(136)  评论(0)    收藏  举报