我有一个字节数组。每个字节的 8 位值是我想要的字符串中的字符。您可以将我的 8 位值想象为 ASCII、ANSI、UTF-8、ISO-8859-1、每日温度读数、与线上一点的距离(以英寸为单位)或任何您想要的值。这无关紧要。
当我完成时。我的 String 中位置 N 处的 char 应与位置 N 处的字节具有相同的值。也就是说,高 8 位应为 0,低 8 位应与源字节相同。
我使用什么编码来简单地将字节映射到字符而没有变化?
对于这个要求,我会放弃编码,因为我不知道它们做什么的细节,只是自己转换字节。
string Convert(byte[] data)
{
char[] characters = data.Select(b => (char)b).ToArray();
return new string(characters);
}
您询问的编码称为“ ISO/IEC 8859-1 ”。
使用扩展ASCII怎么样?
Encoding.GetEncoding(437).GetString(bytes);