当前位置: 首页 > 面试题库 >

在Android中将XML文件解组到Java对象中?

蔡理
2023-03-14
问题内容

我正在使用Internet上将对象编组为XML文件的API。鉴于XSD文件也可用,所以我希望一旦下载文件就可以将它们解编回到Java对象中。

环顾四周后,看起来JAXB是用Java进行此操作的默认库,但是当我开发移动应用程序时,额外的8.6MB依赖性是不可接受的。我还找到了XStream,但它仍然重达7.9MB。

看看Android
SDK,看起来唯一可用的真正XML解析器是SAX。

所以这是一个问题:

  1. 有没有一种方法可以使SAX做到我想要的?
  2. 我错过了Android SDK中的另一个工具吗?
  3. 是否有另一个库(要小得多)可以做到这一点?

谢谢。


问题答案:

有很多工具可以在Java和XML之间转换对象,但是我所熟悉的工具都不比您发现的要小。但是,取决于对象图的复杂性,SAX可能就是您所需要的,而且开销很小。诀窍是在SAX事件处理程序中自己构建对象图。在XML封送处理程序获得如此广泛的普及之前,我已经在几个项目中使用了该技术,尽管需要更多的工作,但是它是有效的。



 类似资料:
  • XML响应 我为电影和图像创建了pojo类。 Film.java 形象JAVA 请帮助我是新来的,我应该使用JAXB。 解决方案: 我已经加了 在Image的getter方法中,我添加了@xmlement(name=“Image”)。 在Image类中,我添加了一个注释@XmlRootElement(name=“Image”),它提供了我想要的东西。

  • 在我的项目中,我遇到了一种情况,即封送一个pojo对象,第一次将输出写入XMLfile中,然后在同一个文件中添加具有不同值但相同节点和子节点的相同封送对象。下面是代码- 当Person构造函数中的'id'发生更改,并且下次用不同的属性值封送Person对象时,'file.xml'文件将被覆盖,我丢失了以前的输出。简单地说,我希望每次“id”get发生更改时都追加封送的Person对象。即用不同的值

  • 问题内容: 我有一个看起来像这样的XML文件: 我想将其读入python对象,类似于字典列表。因为标记是绝对固定的,所以我很想使用正则表达式(我非常擅长使用那些正则表达式)。但是,我想我会检查是否有人知道如何在此处轻松避免使用正则表达式。我对SAX或其他解析没有太多经验,但是我愿意学习。 我期待向您展示如何在不使用regexes的情况下快速完成此操作。谢谢你的帮助! 问题答案: 如果您认为正则表达

  • 问题内容: 我有一个XML字符串,如下所示: 是否可以将XML转换为JSON? 问题答案: 您也可以尝试这种方式。我已经尝试和测试过了。 步骤1:请下载java-json.jar 步骤2:将其添加到项目的文件夹,然后添加到构建路径。 步骤3:然后按以下方式使用 进口寻找 样品串 杰森·斯特林 输出: XML: JSON:

  • 我一直试图将xml(作为字符串)解组到一个对象,但它返回了一个NullPointerException错误。我花了一周时间寻找解决方案,但似乎什么都没用。我已经多次修改了“unmarshallpacs008”方法和“Spienvelessage”类,尝试了我在论坛上找到的其他东西。 在调试代码时,我看到错误发生在“unmarshaller.unmarshal”点,在该点上,“SpinevelMes

  • 问题内容: 我看到过很多不同的文章,涉及到您应该以何种方式将对象序列化到文件,并且所有这些在本质上在执行方式和最佳实践方面存在冲突。因此,这就是我要保存的内容: 我们可以假设configArgs的大小已知,我需要制作一个文件,这就是到目前为止的内容。 问题答案: 好吧,我想,您想将对象直接写入文件 我只是提供了重要的代码。通过异常处理来实现。