1

当我使用 linq 检索 xml 时,<CDATA[[ ]]>被删除,这是我想要实现的。

但是当我保存文件时,<CDATA[[ ]]>变成 &lt;CDATA[[ ]]&gt;了 xml 文件。无论我是否<CDATA[[ ]]>在保存之前显式附加 with 都会给我相同的结果。

尝试附加&lt;CDATA[[ ]]&gt;但仍然给我相同的结果。
有没有其他方法可以让它显示<CDATA[[ ]]>在 xml 文件中?

保存using后,我Encoding.UTF8.GetBytes()用于写入文件。XDocumentXDocument.Save(System.IO.StringWriter)

4

1 回答 1

10

不是 100% 确定你在这里问什么,但这似乎是我如何在你的 XElement 中创建一个 CData 部分。它实际上非常简单,只需使用 XCData 对象。

yourXElement.Add(new XElement("SomeNode", new XCData("Some CData content")));

当您阅读它时,正如您已经看到的那样,您不需要做任何特别的事情,强制转换运算符重载将为您提取数据,即

string myCdata = (string)xe.Element("SomeNode");
于 2010-08-11T03:44:11.980 回答