【问题标题】:C# byte array to string array [duplicate]C#字节数组到字符串数组[重复]
【发布时间】: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"},则输入字符串的格式不正确

标签: c# arrays string byte


【解决方案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.TryParsedocumentation


这只是其中一种方式。您可能还会发现Convert 类非常有用。它有许多静态方法可以将值转换为不同的类型,包括Convert.ToByte(...)Convert.ToString(...)。详情请见MSDN

【讨论】:

    猜你喜欢
    • 2011-12-14
    • 2018-05-01
    • 2015-03-19
    • 2021-01-03
    • 1970-01-01
    • 1970-01-01
    • 2013-06-19
    • 2013-11-30
    • 2019-01-17
    相关资源
    最近更新 更多