Avatar ·

如何在 C# 中将字节数组 (byte[]) 转换为字符串 (string)?

大家好!我是 C# 新手,正在处理网络协议。我有一个从 `BinaryReader` 获取的字节数组。我需要将其转换为普通字符串,以便输出到控制台或保存到日志。 以下是我的代码示例: ```csharp using (var reader = new BinaryReader(File.OpenRead("data.bin"))) { byte[] buffer = reader.ReadBytes(100); // 现在如何将 buffer 转换为字符串? string result = ???; Console.WriteLine(result); } ``` 我尝试过使用 `Encoding.Default.GetString(buffer)`,但最终得到的是乱码而不是文本。我还听说过 `ASCIIEncoding` 类,但不确定该使用哪种编码。请告诉我如何正确地将字节转换为字符串以保留可读文本?如果事先不知道文件中数据的编码,该怎么办? 提前感谢您的帮助! <<>>

主要解决方案:使用正确的编码

C# 中的 Encoding 类提供了