字符和图形可见性

时间:2011-01-03 11:56:29

标签: c# char

运行此代码我发现并非所有char值(从0到65534)都对应一个符号。这很严格吗?或者我要做一些不同的事情来展示与'square'不同的符号?

谢谢大家!

private void Form1_Load(object sender, EventArgs e)
    {
        char x = Char.MinValue;

        do
        {
            listBox1.Items.Add(x + " - " + (int)x);
            x++;

        } while ((int)x < (int)Char.MaxValue);

    }

2 个答案:

答案 0 :(得分:2)

这是正常的。字符显示为正方形至少有三种可能的解释:

  • 控件使用的字体可能不支持某些字符。

  • 并非所有Unicode代码点都是assigned

  

保留代码点。 Unicode标准的任何代码点,保留供将来分配。也称为未分配的代码点。 (参见第3.4节“字符和编码”中的定义D15,以及第2.4节“代码点和字符”。)

  • 当正确显示时,其中一个字符实际上应该是square(□)。

答案 1 :(得分:0)

值得检查您的应用程序可用的字体,并使用Unicode code charts交叉引用您要显示(或期望)的内容。