使用 SAX 进行 XML 解析:如何将 html 处理为 xml 标签中的文本

发布于 2024-12-14 02:53:28 字数 353 浏览 3 评论 0原文

我从外部服务器收到 xml 响应。

使用一些教程我让 SAX-Parser 正常工作。

还有一个小问题仍然存在。

在响应中,有例如包含 html 的描述标记,如下所示:

<description><p><strong>Title</strong></p>Description</description> 

解析我的对象的描述字段后仅包含“<”。

是否可以告诉我的解析器将 html 作为纯文本处理?

或者也许还有其他的可能性来解决这个问题。

谢谢。

I get an xml response from an external server.

Using some tutorials I got SAX-Parser working.

There is a small problem still remaining.

Within the response there is e.g. description tag containing html like this:

<description><p><strong>Title</strong></p>Description</description> 

After parsing description field of my object contains only "<".

Is it possible to tell my parser to handle html as plain text?

Or maybe there are other possibilities to solve this problem.

Thank you.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

黯然#的苍凉 2024-12-21 02:53:28

由于您没有包含代码,所以我必须想象您写的内容。 SAX 处理程序实现中的一个常见错误是没有处理元素文本可能在多个character() 方法调用中返回的事实。您需要将它们聚合在一起,直到获得 endElement() 事件。

since you don't include your code, i have to imagine what you wrote. a common bug in SAX handler implementations is not handling the fact that the element text may be returned in multiple characters() method calls. you need to aggregate them all together until you get the endElement() event.

大海や 2024-12-21 02:53:28

除了解决 SAX 问题之外,您还可以考虑使用 Stax (javax.xml.stream) 解决方案:它的性能与 SAX 一样,但通常更方便。
您还可以强制合并文本内容 (XMLInputFactory.IS_COALESCING) 以避免像使用 SAX 时遇到的问题。

Aside from solution SAX problem, you might consider using Stax (javax.xml.stream) solution instead: it is as performance as SAX, but oftentime bit more convenient.
You can also force coalescing of textual content (XMLInputFactory.IS_COALESCING) to avoid problems like you are encountering with SAX.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文