代码之家  ›  专栏  ›  技术社区  ›  Jeffrey Cameron

linq to xml-尝试打印无穷大符号

  •  2
  • Jeffrey Cameron  · 技术社区  · 16 年前

    我正在为一些HTML输出文件使用linq-to-xml。我需要把无限符号( ∞ )在某些表单元格中的输出代码中。我正在创建这样的Xelement

    var table = new XElement("table",
                new XElement("tr",
                    new XElement("td", "∞")
                )
            );
    

    var document=新的xdocument(表); document.save(我的文件);

    当文件被保存时,我看不到 &α8734; 相反,我看到 &#8734 . 我该如何防止这种翻译?

    1 回复  |  直到 16 年前
        1
  •  5
  •   edosoft    16 年前

    linq to xml做的是正确的事情——它假设当你给它一个字符串作为内容时,这就是你想要看到的内容。它在为你逃走。你真的不想逃避每一个 < ,请 > & 你自己。

    你要做的就是 你想要的实际内容 -它是无穷大的符号。所以试试这个:

    var table = new XElement("table",
                new XElement("tr",
                    new XElement("td", "\u8734")
                )
            );
    

    这很可能最终不是输出文件中的一个实体,只是编码字符——但是 应该 好吧,只要你没有编码问题。

    编辑:我刚检查过,无穷大符号实际上是U+221E,所以你要用“\u21e”来代替。我真的看不出U+8734是什么意思…目前不能用Unicode定义。