char [] dataChar = {'1','2'};
使用C#语言,如何把上面的char数组转换成一个
byte[] dataByte = {'1','2'};

解决方案 »

  1.   

    怎么标题是数,内容又是字符?char[] dataChar = { '1', '2', '3', '4' };
    byte[] dataByte = new byte[dataChar.Length];
    for (int i = 0; i < dataChar.Length; i++)
       dataByte[i] = (byte)dataChar[i];
    char[] dataChar = { '1', '2', '3', '4' };
    byte[] dataByte = new byte[dataChar.Length];
    for (int i = 0; i < dataChar.Length; i++)
       dataByte[i] = byte.Parse(dataChar[i].ToString());
      

  2.   

    Array.Copy(dataChar,dataByte,dataChar.GetLength(0));
      

  3.   

    这可是显式转换了,数据会有损了。
    给你思路:
    1 取出char数组元素,判断可不可以转换成byte类型。哪 'A' 这个数据就不符合楼主的要求了吧。
    2 char强转成byte类型,赋值到byte数组中.楼上两位代码已贴出。收贴。
      

  4.   

    谢谢楼上几位的回复,问题已经解决了。
    代码如下:
    for(int i= 0 ;i <dataChar.Length; i++)

        dataByte[i] = (byte)(dataChar[i]-48);
    }
     
      

  5.   


    .NET 里 你的方法可能会丢失数据char a ='中';
    这里的a =byte[2];的..
      

  6.   

    1喽是强制类型转换,2喽是数组复制,3喽总结性发言......对于数字和字母和符号用1楼的方法就可以直接转换成byte了,但是如果是汉字似乎就不可以了,在C#中一个汉字也占一个字符的长度,是双字节字符,用一个byte位是存不下的,会异常抛出~针对汉字可以用ASCII存储~