public static string encode(byte[] bsrc)  //加码
        {
            string dest = "",str;
            byte bb;
            int num;
            if(bsrc == null)
            {
                return "";
            }
            for(int i = 0; i<bsrc.Length;i++)
            {
                bb = bsrc[i];
                if(bb>0)
                {
                    num = bb;
                }
                else
                {
                    num = (bb&0x7F)+(1<<7);
                }
                str = Convert.ToString(num);
                if(str.Length < 2 )
                {
                    str = "0" + str;
                }
                dest = str.ToUpper();                
            }
            return dest;
        }        public static byte[] deCode(string src) //还原
        {
            if(src.Length < 2)return new byte[0];
            byte[] dest=new byte[src.Length/2];
            byte rb;
            String str;
            
            Array.Clear(dest,0,dest.Length);
            int index = 0;
            for(int ii=0;ii<src.Length-1;ii++)
            {                
                str="#"+src.Substring(ii,ii+2);
                rb=(byte)int.Parse(str);
                dest[index++]=rb;
                ii++;
            }
            return dest;            
        }
假如有一个id为userNum的文本框怎么用上边的那些...

解决方案 »

  1.   

    string strStr = encode(userNum.Text);
    System.Text.Encoding.Default.GetBytes(userNum.Text)
      

  2.   

    string strStr = encode(userNum.Text);
    Byte[] bytes = new Byte[100];
    bytes = System.Text.Encoding.Default.GetBytes(strStr)
      

  3.   

    不对..函数:4、加码解码的规则如下:
    加码时将字符串中的所有字符转换成其对应的ASCII值的16进制值,例如:“A”的ASCII码值为65,以16进制值表示为41,故应发送两个字符“41”以代表字符“A”。示例:msg:=41代表msg=A
    对于汉字则以其内码的16进制值来表示,如“测试”应为:B2E2CAD4。示例:msg:= B2E2CAD4表示的是msg=测试
    参数中只要参数标识与内容之间用“:=”连接的都需要解码后方可使用,解码时将每两位当成其ASCII值的16进制值将其还原。
      

  4.   


    测试
    加密后:B2E2CAD4测试成功
    加密后:B2E2CAD4B3C9B9A6