C#字节数组到字符串数组[重复]
Posted
技术标签:
【中文标题】C#字节数组到字符串数组[重复]【英文标题】:C# byte array to string array [duplicate] 【发布时间】:2017-09-21 06:31:24 【问题描述】:我想将数组的字符串转换为字节数组,反之亦然
例如。
string[] strArr= new string[]"1","2","3";
Byte[] byteArr= strArr.Select(byte.Parse).ToArray()
现在想再次将其转换回
string [] originalArr= ??? from Byte[]
我试过了
strArr.Select(innerArray => Encoding.UTF8.GetString(innerArray)).ToList();
但不工作
【问题讨论】:
not working
是什么意思?
哇哇,Faktorovich 先生,这不是重复您所指的问题。
这并不是真正的重复 - OP 想知道如何将字符串数组转换为字节数组,然后将字节数组转换回匹配的字符串数组。
在这一行出现错误 byte[] bytes = strings.Select(byte.Parse).ToArray();
如果我的字符串类似于 "ProductCode":"PP211766","IsItem":"True","IsBPA":"True",则输入字符串的格式不正确
【参考方案1】:
简单地说:
string[] strings = new string[] "1","2","3" ;
byte[] bytes = strings.Select(byte.Parse).ToArray();
strings = bytes.Select(byteValue => byteValue.ToString()).ToArray();
警告: byte.Parse
如果字符串无法转换为字节,则会抛出运行时异常,例如它不是> 255的数字。可能需要额外的检查才能正确执行。查看byte.TryParse
documentation。
这只是其中一种方式。您可能还会发现Convert
类非常有用。它有许多静态方法可以将值转换为不同的类型,包括Convert.ToByte(...)
或Convert.ToString(...)
。详情请见MSDN。
【讨论】:
以上是关于C#字节数组到字符串数组[重复]的主要内容,如果未能解决你的问题,请参考以下文章