保留字符串'5个Xml编码字符

本文关键字:5个 Xml 编码字符 保留字 字符串 保留 | 更新日期: 2023-09-27 18:07:02

我需要更新一个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编码;但我不确定如何去做。任何想法吗?

保留字符串'5个Xml编码字符

使用Linq-to-XML或任何xml抽象类的好处在于,您不需要担心字符串编码。只需将字符串作为c#字符串传入,让linq为您将其转换为XML字符串:

copyEl.SetElementValue(ns + "characters", "Lorem1 'rIpsum2");

xml中有空白,您可以使用http://msdn.microsoft.com/en-us/library/system.xml.xmltextreader.whitespacehandling.aspx

以各种方式处理空白。