题
在一串元标记的XML parser会得到 困惑 如果它发现以下人物
'
"
<
>
&
(即可以说该名称的公司已经从中检索数据库字段,并且它看起来像这样:"史密斯&Sons")
问题是如何设计划忽略这些字符,如果发现在一个元素?
解决方案
你无法忽略这些字符。
它们在XML中无效,因此需要在CDATA部分进行转义或包装。除非使用不正确的方法(即:字符串连接)构建XML,否则这些字符无法显示在XML 中。
如果使用适当的方法(某些类型的XML库)构建XML,这些字符将被透明的XML转义对象替换,并且没有解析器会抱怨。
其他提示
你的答案是答案。
XML内容的创建者应将它们放在CDATA部分中。
如果你提取的"史密斯&Sons"从数据库,应当逃脱了当插入你的XML
例如上述将成为'Smith&儿子'
同样,对于其他角色上。
如何发生这种情况取决于你如何建立XML内容。如果使用诸如教堂,那么这应该自动发生。如果你在装配XML手,然后你不用担心这个(和其他问题等字符编码,这意味着使用是可取的选择)。
不隶属于 StackOverflow