java - 在 Java 中处理 XML 的更好方法

标签 java xml groovy

有很多问题问最好的XML解析器,我比较感兴趣的是最像Groovy for Java的XML解析器是什么?

我要:

SomeApiDefinedObject o = parseXml( xml );
for( SomeApiDefinedObject it : o.getChildren() ) {
   System.out.println( it.getAttributes() );
}

最重要的是我不想为每种类型的 XML 节点创建一个,我宁愿将它们全部作为字符串处理,而且构建 XML 不会'需要任何转换器或任何东西,只是一个已经定义的简单对象

如果您使用过 Groovy XML 解析器,您就会知道我在说什么

或者,我只使用 Java 中的 Groovy 会更好吗?

最佳答案

这是您可以使用 Sun Java Streaming XML Parser 快速完成的操作

    FileInputStream xmlStream = new FileInputStream(new File("myxml.xml"));
    XMLStreamReader reader = XMLInputFactory.newInstance().createXMLStreamReader(xmlStream);
    while(reader.hasNext()){
        reader.next();
        for(int i=0; i < reader.getAttributeCount(); i++) {
           System.out.println(reader.getAttributeName(i) + "=" + reader.getAttributeValue(i));
        }
    }

关于java - 在 Java 中处理 XML 的更好方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2694045/

相关文章:

java - 无法导出 Cypher 查询

java - 循环创建保存其名称值的 JButton

java - 具有公共(public)字符串数组的静态内容的非静态字段

c - 如何使用 libxml2 修改现有的 xml 文件?

ios - RSS 在页面上获取图像

Java:编码对象——删除 xml 中额外的 ns2 注释

grails - Grails 中的 ExpandoMetaClass 是否可以覆盖 Java 库中的行为?

java - ImageIO 在黑色预期的地方写入青色

标签中的 CSS 选择器错误

hibernate - Grails如何在g:each中显示HQL JOIN值