我有一个关于XML文档特殊字符的问题,我正在使用&在XML和TXMLDoc中的项的值中,Delphi解析器正在抱怨它。
我搜索了一些XML解析选项,但没有一个涉及特殊字符,
任何想法?
示例:
<Configuration>
<Configuration_item>
<view_name value="some view & name"/>
....
此致 米卡
答案 0 :(得分:8)
使用&
来表示&符号。你需要这样做的原因是因为&amp;是XML中的一个特殊字符 - 特别是用于指示XML实体的开头的字符,用于指定内容中的字符(具有讽刺意味)是特殊/复杂字符。
<view_name value="some view & name"/>
其他常见的XML实体:
"
<
(简称为少于)是
>
(大于的缩写)
欲了解更多信息:
答案 1 :(得分:4)
&
,<
和>
是您需要注意的特殊字符,并且在属性"
中也是如此。 &
有点像XML转义字符。
他们可以逃脱:
&
=&gt; &
<
=&gt; <
>
=&gt; >
"
=&gt; "
(实际上,奇怪的是,您实际上不需要在属性中转义>
,只需<
。此外,如果您使用'
而不是"
对于属性分隔符,您需要将"
转义为"
,而不必将'
转义为'
。请参阅XML规范中的AttValue引用的信息。)
答案 2 :(得分:2)
如果您有一个包含大量特殊字符的文本块,则可能需要将其括在CDATA中。