在一串元标记的XML parser会得到 困惑 如果它发现以下人物

'
"
<
>

&

(即可以说该名称的公司已经从中检索数据库字段,并且它看起来像这样:"史密斯&Sons")

问题是如何设计划忽略这些字符,如果发现在一个元素?

有帮助吗?

解决方案

你无法忽略这些字符。

它们在XML中无效,因此需要在CDATA部分进行转义或包装。除非使用不正确的方法(即:字符串连接)构建XML,否则这些字符无法显示在XML 中。

如果使用适当的方法(某些类型的XML库)构建XML,这些字符将被透明的XML转义对象替换,并且没有解析器会抱怨。

其他提示

你的答案是答案。

XML内容的创建者应将它们放在CDATA部分中。

如果你提取的"史密斯&Sons"从数据库,应当逃脱了当插入你的XML

例如上述将成为'Smith&儿子'

同样,对于其他角色上。

如何发生这种情况取决于你如何建立XML内容。如果使用诸如教堂,那么这应该自动发生。如果你在装配XML手,然后你不用担心这个(和其他问题等字符编码,这意味着使用是可取的选择)。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top