我定义了一个Byte[] str= new Byte[2]
现在想在Byte[0]里放入一组字符串“$AA”,代码要怎么些呀
我用 Byte[0]=Convert.ToByte("$AA")
结果系统提示说:输入的字符串格式不正确
请问大侠,要如何处理

解决方案 »

  1.   

         Byte[] str = new Byte[2];
            byte[] array =System.Text.Encoding.Default.GetBytes("$AA");
            str[0] = array[0];
      

  2.   


                byte[] b = new byte[2];
                b[0] = Convert.ToByte("$AA".Substring(1), 16);
                Console.WriteLine(b[0]);
    /*
    输出170
    */
      

  3.   

    "$AA"是3个byte...显然不可能做到...
      

  4.   

    byte[i]中每个元素只能存放一个0-255之间的字符,不能存放字符串。Byte[] str = new Byte[2]; 
            byte[] array =System.Text.Encoding.Default.GetBytes("$AA"); 
            str[0] = array[0]; 
    或许能满足你的要求。或者你用string[]来做也行。
      

  5.   

    不是都告诉你了“输入的字符串格式不正确 ”
    byte 是十六进制数值
    “$AA”是文本型  类型不同不能赋值
    你要存“$AA”用string[]数组
      

  6.   

    $AA 是delphi里16进制数的写法,转换到c#应该是0xAA
      

  7.   

    Byte[] str = new Byte[2];
    Byte[] array = System.Text.Encoding.Default.GetBytes("$AA");
    str[0] = array[0]; 这个是可以滴,但是取值的时候要注意一下把字符串加密成0-255的数字,这个好像不行吧。原理就通不过