<,>在xml文档中

时间:2009-01-22 07:38:32

标签: .net xml

当我尝试插入像<或者>在xml-tag的InnerText部分中,然后在通过xmlDocument.InnerXml访问xml之后,这些符号被他们的html代码替换为& lt或& gt,有人可以向我解释这个并且可能给我一个解决方案这个问题?

亲切的问候

塞巴斯蒂安

4 个答案:

答案 0 :(得分:5)

由于尖括号用作文档结构,因此必须转义这些符号。要解决这个问题,请确保正确解码文本。

答案 1 :(得分:4)

您也可以尝试将文字括在CDATA section

答案 2 :(得分:3)

根据XML文件中的定义(请参阅spec),<用于打开元素。同样,>用于关闭元素。

为了允许这些(以及一些其他字符)出现在XML文件中,它们被编码为entities

您应该会发现这一切都是透明的 - 如果您将<放入元素的内容中,它将被存储为&lt;,然后在您获取内容时将其翻译回来再次出来。

如果这是因为你试图在输出文件中添加额外的元素而妨碍你,你应该看看用于直接创建元素的各种API - 写文本将会失败。

答案 3 :(得分:0)

这取决于您希望在内部文本中显示的内容。如果您实际上是在尝试插入新元素,那么最好将新节点添加到Nodes集合(type = element)。如果您确实希望文本呈现为&lt;和&gt;那么这已经完全符合你的需要了。

如果您能够解释您希望通过此操作实现的最终结果,我们可以准确地告诉您需要做什么。