C# 中无需 BinaryReader 将字节数组转换为字符串
在操作字节数组中的数据时,通常需要将其转换为字符串以进行进一步处理或显示。本文探讨如何在不依赖 BinaryReader 类的情况下使用 C# 执行此转换。
问题:
您已创建包含一个或多个字符串的字节数组,并且需要从字节数组中检索字符串值。但是,由于兼容性限制,无法使用 BinaryReader 类。
解决方案:
要将字节数组转换为字符串,可以使用 System.Text.Encoding.Default.GetString() 方法。此方法将字节数组作为输入,并根据系统的默认设置自动确定合适的编码。
<code class="language-csharp">byte[] result = reader.ReadBytes((int)binWriter.BaseStream.Length); var str = System.Text.Encoding.Default.GetString(result);</code>
但是,需要注意的是,默认编码并不总是适合您的特定需求。在这种情况下,您可以使用以下方法之一显式指定所需的编码:
<code class="language-csharp">// 使用 ASCII 编码转换 var str = System.Text.Encoding.ASCII.GetString(result); // 使用 UTF-8 编码转换 var str = System.Text.Encoding.UTF8.GetString(result); //等等</code>
以上是如何在 C# 中不使用 BinaryReader 将字节数组转换为字符串?的详细内容。更多信息请关注PHP中文网其他相关文章!