12

我有一个字节数组。每个字节的 8 位值是我想要的字符串中的字符。您可以将我的 8 位值想象为 ASCII、ANSI、UTF-8、ISO-8859-1、每日温度读数、与线上一点的距离(以英寸为单位)或任何您想要的值。这无关紧要。

当我完成时。我的 String 中位置 N 处的 char 应与位置 N 处的字节具有相同的值。也就是说,高 8 位应为 0,低 8 位应与源字节相同。

我使用什么编码来简单地将字节映射到字符而没有变化?

4

3 回答 3

20

对于这个要求,我会放弃编码,因为我不知道它们做什么的细节,只是自己转换字节。

string Convert(byte[] data)
{
    char[] characters = data.Select(b => (char)b).ToArray();
    return new string(characters);
}
于 2013-04-12T22:16:11.453 回答
2

您询问的编码称为“ ISO/IEC 8859-1 ”。

于 2013-04-13T01:04:14.987 回答
-2

使用扩展ASCII怎么样?

Encoding.GetEncoding(437).GetString(bytes);
于 2015-03-24T17:23:31.833 回答