我不能以我想要的方式写出值。
基本上,如果我写进去,就说“15A”
我认为会拆分的是字符之间的空格。
但现在实际发生的情况是,它将每个字符/位置都视为一个数据。这意味着它应该写成"49 32 53 32 65“而不是"49 53 65”。基于ASCII表。我遗漏了什么?
byte[] writeValue = text.Split(' ').Where(token =>
!string.IsNullOrEmpty(token)).Select(token => Convert.ToByte(token, 16)).ToArray();解决方案:
byte[] writeValue = text.Split(' ').Select(s => Convert.ToByte(s)).ToArray();发布于 2016-06-15 22:42:07
你试过这种方法吗?
byte[] writeValue = text
.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries)
.Select(token => Convert.ToByte(token, 16))
.ToArray();发布于 2016-06-15 22:56:07
string text = "0 1 2 3";
string[] textAfter = text.Split(' ');
byte[] writeValue = new byte[textAfter.Length];
for (int i = 0; i < textAfter.Length; i++)
{
writeValue[i] = (byte)Convert.ToChar(textAfter[i]);
}https://stackoverflow.com/questions/37838294
复制相似问题