3

我需要更新一个 XML 文档;使用 C#,最好是 Linq To Xml。源 XML 文件具有以下节点:

<characters>Lorem &#xD;Ipsum</characters>

我需要将此节点更新为如下内容:

<characters>Lorem1 &#xD;Ipsum2</characters>

当我从 Xml 中读取字符串时;我明白了:

"Lorem &#xD;Ipsum"

当我使用

copyEl.SetElementValue(ns + "characters", "Lorem1 &#xD;Ipsum2");

输出的 Xml 具有被重新转义的编码字符的前导 & 符号:

 <characters>Lorem1 &amp;#xD;Ipsum2</characters>

我想按原样保留原始字符串中的 Xml 编码;但我不确定如何去做。有什么想法吗?

4

2 回答 2

2

使用 Linq-to-XML 或任何 xml 抽象类的美妙之处在于您无需担心字符串编码。只需将字符串作为 C# 字符串传入,然后让 linq 为您将其转换为 XML 字符串:

copyEl.SetElementValue(ns + "characters", "Lorem1 \rIpsum2");
于 2013-04-01T22:31:54.517 回答
0

您的 xml 中有空格,您可以使用http://msdn.microsoft.com/en-us/library/system.xml.xmltextreader.whitespacehandling.aspx以各种方式处理

于 2013-04-01T23:55:49.060 回答