繁体   English   中英

C#中的扩展ASCII

[英]Extended ASCII in C#

我想将一些扩展的ascii字符存储到字典中以进行查找,但转换几乎没有问题。

我必须存储这些字符的当前方法适用于所有非图形外观的ASCII字符0x20至0xAF。

当前方法:

private static void LoadAnsiTable()
{
    for (byte i = 0x20; i < 0xFE; i++)
    {
      AnsiLookup.Add(i, Convert.ToChar(i).ToString());
    }
}

但是0xAF及更高版本没有░▓▓│┤╡╢等等,它只有这些时髦的字母。

查看此表http://www.asciitable.com/以供参考。

如果我手动添加它,它将起作用

AnsiLookup.Add(0xB0, "░");

我想知道如何才能在某种集合中捕获这些符号,而不必手动将其全部添加?

我假设您的“扩展ASCII”实际上是代码页437

Encoding cp437 = Encoding.GetEncoding(437);
byte[] source = new byte[1];
for (byte i = 0x20; i < 0xFE; i++)
{
    source[0] = i;
    AnsiLookup.Add(i, cp437.GetString(source));
}

请注意,.NET Framework本身不支持此代码页,因此它可能并非在所有系统上都可用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM