簡體   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