当前位置: 首页 > 知识库问答 >
问题:

如何在android中解析xml文件?

谭繁
2023-03-14

我有一个XML文件,如

<container xmlns="urn:oasis:names:tc:opendocument:xmlns:container" version="1.0">
   <rootfiles>
        <rootfile full-path="OEBPS/content.opf" media-type="application/oebps-package+xml"/>
   </rootfiles>
</container>

我需要全路径值,即“OEBPS/content.opf”文本。我尝试使用文档生成器和XML解析器,但没有结果。如何遍历该节点并获取值

共有1个答案

闽高峯
2023-03-14

我使用Jackson序列化和反序列化(解析)xml。我为每个元素制作一个POJO,然后根据需要使用它解析到POJO的注释。下面是一个粗略的例子。但是两个外部类将使用@JsonIgnoreProperties注释忽略所有内容(除非您将其包含在POJO中)。Rootfile类将使用@JacksonXmlProperty注释解析您想要的属性。

旁注:我并不是百分之百支持JsonRootName。这就是我标记xml根的方式,但我的同事使用@JackonXmlRootElement(value=“…”)将xml字符串解析为POJO

@JsonRootName(value = "container")
@JsonIgnoreProperties(ignoreUnknown = true)
public class Container {

  @JsonIgnoreProperties(ignoreUnknown = true)
  public class Rootfiles {

    @JsonRootName(value = "rootfile")
    @JsonIgnoreProperties(ignoreUnknown = true)
    public class Rootfile {
      
      @JacksonXmlProperty(isAttribute = true, localName = "full-path")
      private String fullPath;

      public String getFullPath() { return fullPath; }
    }
  }
}

 类似资料:
  • 本文向大家介绍如何在JSP中解析XML?,包括了如何在JSP中解析XML?的使用技巧和注意事项,需要的朋友参考一下 <X:解析>标签用于解析通过属性或在标签体任一指定的XML数据。 属性 <X:解析>标签具有以下属性- 属性 描述 需要 默认 变种 包含已解析的XML数据的变量 没有 没有 XML文件 要解析的文档文本(字符串或阅读器) 没有 身体 systemId 用于解析文档的系统标识符URI

  • 问题内容: 目前,我正在尝试使用SAX解析器,但是通过文件它大约3/4完全冻结了,我尝试分配更多的内存等,但没有得到任何改善。 有什么办法可以加快速度吗?更好的方法? 剥开它的骨头,所以我现在有了以下代码,并且在命令行中运行时,它的运行速度还没有达到我想要的速度。 使用“ java -Xms-4096m -Xmx8192m -jar reader.jar”运行它,得到的GC开销限制超出了文章700

  • 问题内容: 我在包含XML的数据库中有很多行,并且试图编写Python脚本来计算特定节点属性的实例。 我的树看起来像: 如何使用Python访问XML中的属性“1”和“2”? 问题答案: 我建议ElementTree。相同的API还有其他兼容的实现,例如和在标准库本身中。但是,在这种情况下,他们主要添加的是更高的速度-编程的难易程度取决于定义的API 。 首先用 构建 的实例,例如使用函数,或者通

  • 问题内容: 我不是开发人员,只是涉足编程。我从来不了解的一个领域是XML解析。可悲的是,对于我最新的“项目”,我需要为一个Android应用执行此操作。它是我正在工作的原型。 我有这个XML(模型文件): 我有一些代码可以让我获得每个的NodeList: 我不确定下一步该怎么做。我的代码对此似乎很长。我一直在搜寻更好的方法,但发现一些更简洁的代码,无法上班。 有没有很好的Android XML教程

  • 如果我运行一个普通的JAVA项目,上面的函数可以正常工作,但是如果我在android项目中运行它,它会返回false。问题出在哪里?如何在android项目中预览e.printstacktrace,以便查看异常情况?

  • 我无法在这里解析XML。它只返回“Item” 由于我的AndroidActivity非常大,因此无法显示。这就是为什么我只展示了负责解析的部分。 我的 XML 看起来像这样: 我的活动类方法: 我的XML分析器类: 我不能在这里解析我的XML。这里的问题是什么?< br >它只返回“Item”。< br >在我的< code>ActivityClass中,特别是在代码的这一部分,我需要做什么?