有没有更简单的方法来解析 Java 中的 XML? [英] Is there an easier way to parse XML in Java?

查看:35
本文介绍了有没有更简单的方法来解析 Java 中的 XML?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试弄清楚如何解析一些 XML(用于 Android 应用程序),但在 Java 中这样做的难度似乎很可笑.似乎它需要创建一个具有各种回调(startElement、endElement 等)的 XML 处理程序,然后您必须负责将所有这些数据更改为对象.类似于本教程.

I'm trying to figure out how to parse some XML (for an Android app), and it seems pretty ridiculous how difficult it is to do in Java. It seems like it requires creating an XML handler which has various callbacks (startElement, endElement, and so on), and you have to then take care of changing all this data into objects. Something like this tutorial.

我真正需要的是将 XML 文档更改为多维数组,甚至更好的是拥有某种 Hpricot 处理器.有没有办法做到这一点,或者我真的必须在上面的例子中编写所有额外的代码?

All I really need is to change an XML document into a multidimensional array, and even better would be to have some sort of Hpricot processor. Is there any way to do this, or do I really have to write all the extra code in the example above?

推荐答案

Java 中有两种不同类型的 XML 处理器(实际上有 3 种,但一种很奇怪).您拥有的是 SAX 解析器,而您想要的是 DOM 解析器.看看http://www.mkyong.com/java/how-to-read-xml-file-in-java-dom-parser/了解如何使用 DOM 解析器.DOM 将创建一棵树,您可以很容易地浏览它.SAX 最适合大型文档,但如果速度较慢且内存密集程度更高,则 DOM 会容易得多.

There are two different types of processors for XML in Java (3 actually, but one is weird). What you have is a SAX parser and what you want is a DOM parser. Take a look at http://www.mkyong.com/java/how-to-read-xml-file-in-java-dom-parser/ for how to use the DOM parser. DOM will create a tree which you can navigate pretty easily. SAX is best for large documents but DOM is much easier if slower and much more memory intensive.

这篇关于有没有更简单的方法来解析 Java 中的 XML?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆