如何处理XML中的特殊字符(=)

问题描述:

我在xml中的数据中有一些特殊字符,所以我收到错误来处理它们。如何处理XML中的特殊字符(=)

<SubFilePath>http://d2coa5o205622p.cloudfront.net/newswatchforweb&amp;autoPlay=true&amp;autoRewind=false</SubFilePath> 

“ '=' 是一个意外标记的预期令牌是“。”;

我知道如何处理其他特别喜欢 “<”, “>”, “\””, “\'”,“&”但我怎么能处理好 “=”?

我使用C#

+2

您发布的片段是格式良好的XML ,正确地将'&'符号转义为'&'。它不会产生您引用的错误。 – bobince 2010-01-04 14:04:19

+0

但仍然出现“=”符号错误 – Pankaj 2010-01-04 14:06:23

+0

那么情况比看起来更复杂 - 您是如何编写或阅读此XML? – Sander 2010-01-04 14:19:22

包装你的数据CDATA块内

或者使用&#61;

参见:http://www.theukwebdesigncompany.com/articles/entity-escape-characters.php

+0

你是对的@@ Slebetman ...使用CDATA我的问题solve.Can你可以告诉我一件事是谁使用CDATA或格式字符串连击?能否请你解释我...谢谢你的帮助 – Pankaj 2010-01-05 04:48:09

+0

只要你的数据本身不包含CDATA终结符,CDATA就是最简单的。使用CDATA,您不需要解析数据并避免麻烦的字符。 – slebetman 2010-01-05 06:34:40

如果您使用其中一个XML API编写XML,那么不会有问题。使用XmlWriter或XElement。

如果您有相关的XSL模式,那么你也应该定义与类型“任何URI”这个元素,就像这样:

<xs:element name = "SubFilePath" type = "xs:anyURI" /> 

See this book