哪个字符不应设置为 XML 文件中的值
Which character should not be set as values in XML file
我注意到当我用“&”字符配置 XML 文件值时,XML 文件无法正确打开
我想这是因为 XML 文件值不应该有 &
这样的字符
并且“&”不应设置为 XML 文件中的值
如果XML中还有更多字符不应该设置为值,请指教? (或者也许只有 & 角色??)
来自 XML“&”
的错误值示例
<FolderPath>\EEA\E1\C & W 100\AWQ</FolderPath>
来自 XML
的右行示例
<FolderPath>\EEA\E1\C and W 100\AWQ</FolderPath>
我建议您参考:http://www.w3schools.com/xml/xml_syntax.asp
Some characters have a special meaning in XML.
If you place a character like "<" inside an XML element, it will generate an error because the parser interprets it as the start of a new element.
There are 5 pre-defined entity references in XML:
< < less than
> > greater than
& & ampersand
' ' apostrophe
" " quotation mark
您可以通过以下方式验证您的 XML:
http://www.w3schools.com/xml/xml_validator.asp
安全的做法是始终按如下方式转义:
& ⇒ &
< ⇒ <
> ⇒ >
" ⇒ "
' ⇒ '
详细答案:
&
在元素文本和属性值上比较特殊。请改用 &
。
<
在元素文本中比较特殊。请改用 <
。
>
本身并不特别
"
的特殊之处在于由 "
分隔的属性值。请改用 "
。
'
的特殊之处在于由 '
分隔的属性值。使用 '
代替 [1].
]]>
在元素文本中比较特殊。请改用 ]]>
。
]]>
在 CDATA
部分是特殊的。请改用 ]]>]]><![CDATA[
。
--
不能在评论中使用
- 在XML中只能找到以下字符:0x0009、0x000A、0x00D、0x0020..0xD7FF、0xE000..0xFFFD、0x10000..0x10FFFF。没有办法包括其他人。
&
、<
、>
、"
和 '
始终可以在元素文本和属性值中使用,即使没有必要这样做,所以安全的做法是始终转义 &
、<
、>
、"
和 '
。 (或者,始终转义除单引号之外的所有引号,并且永远不要使用单引号作为属性值的分隔符。)
- 在HTML中,您必须改用
'
。旧版本的 Internet Explorer 不小心也不支持 XHTML(基于 XML 的 HTML)的 '
。因此,有些人也将 '
用于 XML。
我注意到当我用“&”字符配置 XML 文件值时,XML 文件无法正确打开
我想这是因为 XML 文件值不应该有 &
这样的字符并且“&”不应设置为 XML 文件中的值
如果XML中还有更多字符不应该设置为值,请指教? (或者也许只有 & 角色??)
来自 XML“&”
的错误值示例<FolderPath>\EEA\E1\C & W 100\AWQ</FolderPath>
来自 XML
的右行示例 <FolderPath>\EEA\E1\C and W 100\AWQ</FolderPath>
我建议您参考:http://www.w3schools.com/xml/xml_syntax.asp
Some characters have a special meaning in XML.
If you place a character like "<" inside an XML element, it will generate an error because the parser interprets it as the start of a new element.
There are 5 pre-defined entity references in XML:
< < less than
> > greater than
& & ampersand
' ' apostrophe
" " quotation mark
您可以通过以下方式验证您的 XML: http://www.w3schools.com/xml/xml_validator.asp
安全的做法是始终按如下方式转义:
& ⇒ &
< ⇒ <
> ⇒ >
" ⇒ "
' ⇒ '
详细答案:
&
在元素文本和属性值上比较特殊。请改用&
。<
在元素文本中比较特殊。请改用<
。>
本身并不特别"
的特殊之处在于由"
分隔的属性值。请改用"
。'
的特殊之处在于由'
分隔的属性值。使用'
代替 [1].]]>
在元素文本中比较特殊。请改用]]>
。]]>
在CDATA
部分是特殊的。请改用]]>]]><![CDATA[
。--
不能在评论中使用- 在XML中只能找到以下字符:0x0009、0x000A、0x00D、0x0020..0xD7FF、0xE000..0xFFFD、0x10000..0x10FFFF。没有办法包括其他人。
&
、<
、>
、"
和 '
始终可以在元素文本和属性值中使用,即使没有必要这样做,所以安全的做法是始终转义 &
、<
、>
、"
和 '
。 (或者,始终转义除单引号之外的所有引号,并且永远不要使用单引号作为属性值的分隔符。)
- 在HTML中,您必须改用
'
。旧版本的 Internet Explorer 不小心也不支持 XHTML(基于 XML 的 HTML)的'
。因此,有些人也将'
用于 XML。