关闭 SAXParser 中的取消转义
我在 Java 中使用 SAXParser。
有没有办法在使用 SAXParser 解析 xml 时关闭转义?
例如,我有以下 xml:
<tag>
„title”
</tag>
我想通过 characters(char[] ch, int start, int length) 获取消息 „title”
但处理程序对 xml 的内容进行转义并给出: “title”
我尝试指定自定义EntityResolver,但似乎永远不会调用resolveEntity()方法。
I am using SAXParser in Java.
Is there a way to turn off unescaping while parsing xml using SAXParser?
For example I have the following xml:
<tag>
„title”
</tag>
I would like to obtain by characters(char[] ch, int start, int length) message „title”
but the handler unescapes content of the xml and gives:„title”
I tried with specifying custom EntityResolver, but it seems that resolveEntity() method never gets called.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
SAXParser 正在做它应该做的事情,但是如果您想按原样保留文本节点,您需要将其包装在 CDATA 部分中。您可以将其作为预处理步骤来执行,或者也许有一种方法可以在解析时进行包装(但我不知道如何)。
The SAXParser is doing what it is supposed to do but if you want to preserve a text node as-is you need to wrap it in a CDATA section. You can either do this as a preprocess step or perhaps there is a way to do the wrapping while parsing (but I don't know how).