java - 如何重命名 XML 节点名称

标签 java xml

我想将现有的 XML 节点重命名为新名称。我正在使用 DOM 概念 java 进行 XML 解析,我有一组包含相同名称的节点。例如

<names> 
    <abc>Apple</abc> 
    <abc>Ball</abc>
    <abc>Cat</abc> 
    <abc>Doll</abc> 
    <abc>Elephant</abc> 
    </names>

在上面的示例中,有一组节点包含值。在那个例子中我想改变节点值(即)

<names> 
    <name>Apple</name> 
    <name>Ball</name>
    <name>Cat</name> 
    <name>Doll</name> 
    <name>Elephant</name> 
    </names>

这在 DOM 中是否可行,我对使用 DOM 进行解析概念还很陌生。感谢您提出宝贵意见。

最佳答案

类似于我在 updating a property of a xml tag 中的回答:

public void changeTagName(Document doc, String tag, String fromTag, String toTag) {
    NodeList nodes = doc.getElementsByTagName(fromTag);
    for (int i = 0; i < nodes.getLength(); i++) {
        if (nodes.item(i) instanceof Element) {
            Element elem = (Element)nodes.item(i);
            doc.renameNode(elem, elem.getNamespaceURI(), toTag);
        }
    }
}

关于java - 如何重命名 XML 节点名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6531129/

相关文章:

java - 使用 Java 转换 XML 文件

android - 创建不需要在 XML 中设置 layout_width/height 的自定义 View

java - 通用工厂模式-如何处理返回类型

java - Apache CXF - 凭据未从 WSS4JOutInterceptor 发送?

java - 为什么 InetAddress.getLocalHost() 的这种用法在 Java 6 上工作正常,但在 OSX 上的 Java 7 上却失败了

python - 导入错误 : No module named xml. dom.minidom

java - 使用 DOM4J 更改 XML 属性的最佳方法是什么

python - 获取带有属性的 etree 元素,或者包含带有属性的子元素

java - ListView 中 url 中的图像随机图像错误

java - 网络服务 : Firefox can't establish a connection to the server at 192. 168.10.203:8080