Java-ApacheCommons摘要器-编写xml
我使用ApacheCommonsDigester(带注释)将XML文件加载到Java类中。 一切正常。 现在,我需要更新XML文件。我必须(在Java中)更改属性的值,然后写出新的XML文件。 我怎么办?就我所见,Digester API并不是为此目的而设计的Java-ApacheCommons摘要器-编写xml,java,xml,apache-commons-digester,Java,Xml,Apache Commons Digester,我使用ApacheCommonsDigester(带注释)将XML文件加载到Java类中。 一切正常。 现在,我需要更新XML文件。我必须(在Java中)更改属性的值,然后写出新的XML文件。 我怎么办?就我所见,Digester API并不是为此目的而设计的 编辑:阅读答案,我明白我没有提供足够的信息。我的XML文件是程序a的一个配置文件,所以我在启动程序a时确实需要它的内容。然后,我有另一个GUI程序B,它可以修改这个配置文件,它只需要用户输入一些信息,并修改XML文件上的相关字段。XML修
编辑:阅读答案,我明白我没有提供足够的信息。我的XML文件是程序a的一个配置文件,所以我在启动程序a时确实需要它的内容。然后,我有另一个GUI程序B,它可以修改这个配置文件,它只需要用户输入一些信息,并修改XML文件上的相关字段。XML修改(通常称为XML转换)最好的处理方式是。Digester是实现该标准的Java库之一,正如您所发现的,Digester是一个只读工具,它提供了从XML到Java类的映射,但不是相反。如果需要将XML读入Java类,然后再将其写回XML,我建议:
- 继续使用Digester进行阅读,并使用低级XML编写器 类别(例如) 将数据写回。如果您的数据不是这样,这是合适的 复杂,和/或输出XML与输入的结构不同 XML
- 用完整的Java到XML映射库(JAXB、JiBX)替换Digester 等等),它将为您读写XML。这是 如果您的数据更复杂,和/或输出XML是 与输入XML的结构相同