C# Byte 数组转换为字符串 - 完整指南
可以使用 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 对象进行转换。
原文地址: https://www.cveoy.top/t/topic/nPFy 著作权归作者所有。请勿转载和采集!