首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何才能使我的xml安全地进行解析(当xml中包含&字符时)?

如何才能使我的xml安全地进行解析(当xml中包含&字符时)?
EN

Stack Overflow用户
提问于 2011-05-11 20:27:05
回答 5查看 1.5K关注 0票数 4

我得到了一个xml字符串,我需要将其放入解析器。它目前因为一个非法的xml字符而抱怨。非常简单的例子:

代码语言:javascript
复制
<someXml>this & that</someXml>

我知道解决方案是用&amp;替换&,但我没有生成XML,因此无法控制这些值。

简单的字符串替换不是正确的方法,因为“&”在XML中有特殊的含义,用“&”全局替换“&”会破坏原本的特殊含义。有没有一种解决方案可以将一个完整的xml文档“修复”,使“&”变成“&”,但仅限于预期的位置?用‘&’全局替换‘&’安全吗(请注意两边的空格)?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2011-05-11 20:57:46

我认为这是一个有趣的问题,因为在现实生活中可能真的会发生这种情况。虽然我认为正确的做法是要求XML提供程序修复XML并使其有效,但我认为一种选择是尝试使用宽松的解析器。我做了一些搜索,我发现这个blog post正在讨论同样的问题,并提出了我所想的相同的解决方案。您可以尝试使用jsoup。让我重复一遍,我认为这不是最好的做法:您真的应该请求XML提供程序来修复它。

票数 4
EN

Stack Overflow用户

发布于 2011-05-11 20:37:07

我建议请这篇文档的提供者来修复它。实际上,它是,而不是(有效) XML!如果他们同意使用XML格式,他们应该解决这个问题。

票数 8
EN

Stack Overflow用户

发布于 2011-05-11 20:29:59

您不能这样做,因为您会破坏XML字符(对她进行编码)。您必须将您的代码重写到生成XML的库中。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5964200

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档