日期:2014-05-17  浏览次数:21086 次

C# string 转Byte数组,求解!
数据大概是这样,数据存储在Txt文件中:
0x86 0x32 0x32 0x86 0x4F 0x01 0x31 0xFF 0xFF 0x01 0xF4 0x70 0x00 0x00 0x01 0x10 0x00 0x16
0x86 0x32 0x32 0x86 0x4F 0x01 0x31 0xFF 0xFF 0x01 0xF4 0x70 0x00 0x00 0x02 0x10 0x00 0x16
0x86 0x32 0x32 0x86 0x4F 0x01 0x31 0xFF 0xFF 0x01 0xF4 0x70 0x00 0x00 0x04 0x10 0x00 0x16

现在我用StreamReader读每一行,然后拆分成了一个string数组,假设第一行读到的结果如下:
0x86 0x32 0x32 0x86 0x4F 0x01 0x31 0xFF 0xFF 0x01 0xF4 0x70 0x00 0x00 0x01 0x10 0x00 0x16

我怎么将string数组的每个元素存入byte数组,最终的byte数组元素如下:
0x86 0x32 0x32 0x86 0x4F 0x01 0x31 0xFF 0xFF 0x01 0xF4 0x70 0x00 0x00 0x01 0x10 0x00 0x16
0x86 0x32 0x32 0x86 0x4F 0x01 0x31 0xFF 0xFF 0x01 0xF4 0x70 0x00 0x00 0x02 0x10 0x00 0x16
0x86 0x32 0x32 0x86 0x4F 0x01 0x31 0xFF 0xFF 0x01 0xF4 0x70 0x00 0x00 0x04 0x10 0x00 0x16
麻烦大家帮忙看一看,本人不才,望高手不吝赐教! 谢谢!
 

------解决方案--------------------
C# code
string str = "0x86 0x32 0x32 0x86 0x4F 0x01 0x31 0xFF 0xFF 0x01 0xF4 0x70 0x00 0x00 0x01 0x10 0x00 0x16";
string[] arr = str.Split(' ');
byte[] data = new byte[arr.Length];
for (int i = 0; i < arr.Length; i++)
    data[i] = Convert.ToByte(arr[i], 16);

------解决方案--------------------
你的意思是不是如何使"0x86"转换成86
byte.Parse("0x86".Substring(2),System.Globalization.NumberStyles.HexNumber)
------解决方案--------------------
你到底要做什么??

------解决方案--------------------

------解决方案--------------------
探讨
C# code
string str = "0x86 0x32 0x32 0x86 0x4F 0x01 0x31 0xFF 0xFF 0x01 0xF4 0x70 0x00 0x00 0x01 0x10 0x00 0x16";
string[] arr = str.Split(' ');
byte[] data = new byte[arr.Length];
for (int i = 0;……