可以使用 Encoding 类中的 GetString 方法将 byte 数组转换为字符串。例如:

byte[] bytes = new byte[] { 72, 101, 108, 108, 111 };
string str = Encoding.Default.GetString(bytes);
Console.WriteLine(str); // 输出 'Hello'

使用 Encoding 类转换 byte 数组

Encoding 类提供了一系列静态方法来处理不同字符编码的字符串。GetString 方法接收一个 byte 数组作为参数,并返回一个字符串。

示例:

// 创建一个 byte 数组
byte[] bytes = new byte[] { 72, 101, 108, 108, 111 };

// 使用 Encoding.Default 将 byte 数组转换为字符串
string str = Encoding.Default.GetString(bytes);

// 打印结果
Console.WriteLine(str); // 输出 'Hello'

注意:

  • Encoding.Default 使用系统默认的字符编码,通常是 ASCII 或 UTF-8。
  • 如果你的 byte 数组使用的是其他编码,你需要使用相应的 Encoding 对象。例如,要使用 UTF-8 编码,可以使用 Encoding.UTF8。

示例:

// 使用 UTF-8 编码转换 byte 数组
string str = Encoding.UTF8.GetString(bytes);

最佳实践:

  • 始终指定明确的编码,避免使用默认编码,因为它可能导致数据丢失或显示错误。
  • 使用 Encoding.GetEncoding 方法来获取特定编码的 Encoding 对象,例如 Encoding.GetEncoding('UTF-8')。
  • 在处理来自不同来源的数据时,务必了解其使用的编码,并使用相应的 Encoding 对象进行转换。
C# Byte 数组转换为字符串 - 完整指南

原文地址: https://www.cveoy.top/t/topic/nPFy 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录