XML文档中必须转义哪些字符,或者在哪里可以找到这样的列表
如果您使用适当的类或库,它们将为您进行转义。许多XML问题都是由字符串连接引起的
XML转义字符
只有五个:
“";
“&;apos;
<;&;lt;
>;>;
&&;amp;amp;amp;amp;
转义字符取决于特殊字符的使用位置
这些示例可以在W3C标记验证服务中进行验证
正文
安全的方法是转义文本中的所有五个字符。但是,三个字符“
,”
和>不需要在文本中转义:
<;?xml version=“1.0”?>;
<;有效>;“'>;<;/valid>;
属性
安全的方法是转义属性中的所有五个字符。但是,>;
字符不必在属性中转义:
<;?xml version=“1.0”>;
<;valid attribute=“>;“/>;
如果引号是“
”,则属性中的字符不需要转义:
<;?xml version=“1.0”?>;
<;有效属性=“”/>;
同样,如果引号是”
,则不需要在属性中转义“
:
<;?xml version=“1.0”>;
<;有效属性='“'/>;
评论
注释中不得转义所有五个特殊字符:
<;?xml version=“1.0”?>;
<;有效>;
<;!--“<;>;>;>;
<;/valid>;
CDATA
CDATA区域中的所有五个特殊字符不得转义:
<;?xml version=“1.0”>;
<;有效>;
<;![CDATA[“<;>;]>;
</有效>;
处理指令
XML处理指令中的所有五个特殊字符均不得转义:
<;?xml version=“1.0”?>;
<;?过程<;“&;>;?>;
<;有效/>;
XML与HTML
HTML有它自己的转义码集,它覆盖了更多的字符