动态设置来自Ints字符串的byte []数组

时间:2015-08-27 11:55:39

标签: c# string int byte typeconverter

我通常设置我的byte []数组:

byte[] byteArr = { 123, 234, 123, 234, 123, 123, 234 };

现在,我的问题, 我得到的数据必须作为字符串存储到数组中。

示例:

string datas = "123, 234, 123, 234, 123, 123, 234";

我想做类似的事情:

byte[] byteArr = { datas };

没有运气......

我尝试将字符串爆炸为字符串数组,然后在存储到每个数组字段之前将每个值转换为Int。没有运气:

for (var i = O; i<datasArray.length; i++) {
    byteArr[i] = Int32.Parse(datasArray);  //error, cannot convert int to byte
}

我该怎么办?

5 个答案:

答案 0 :(得分:2)

您可以使用简单的Regex从字符串中获取数字

malloc()

答案 1 :(得分:1)

Byte.Parse

怎么样?
for (var i = O; i<datasArray.length; i++) {
    byteArr[i] = Byte.Parse(datasArray[i]);  
}

答案 2 :(得分:0)

还有Convert.ToByte(string val)

string datas = "123, 234, 123, 234, 123, 123, 234";

byte[] byteArr = datas.Split(',').Select(b => Convert.ToByte(b)).ToArray();

答案 3 :(得分:0)

ConvertAll非常快

byte[] byteArr = Array.ConvertAll(datasArray, Byte.Parse);

答案 4 :(得分:0)

static byte[] CommaStringToBytes(string s)
{
  return s.Split(',').Select (t => byte.Parse (t.Trim())).ToArray ();  
}
相关问题