XML修改节点值

时间:2020-12-29 00:32:33

基于DOM4J

  • 先获取根节点 doc.getRootElement()
  • 然后获取需要修改的节点 doc.getRootElement().node(int)
  • 重新赋值 doc.getRootElement().node(int).setText("str")
package com.xiaoming;

import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element; public class MyTest { public static void main(String[] args) { Document doc = DocumentHelper.createDocument();
Element root = doc.addElement("root"); root.addElement("code").addText("1");
root.addElement("msg").addText("好消息");
System.out.println("前:" + doc.asXML()); doc.getRootElement().node(0).setText("0");
doc.getRootElement().node(1).setText("什么好消息啊");
System.out.println("后: " + doc.asXML()); }
}

控制台:

前:<?xml version="1.0" encoding="UTF-8"?>
<root><code>1</code><msg>好消息</msg></root>
后: <?xml version="1.0" encoding="UTF-8"?>
<root><code>0</code><msg>什么好消息啊</msg></root>

xml 去掉头部

今天把xml以String形式 ( doc.asXML() ) 保存到json中, 但是 头部感觉挺多余,

这时可以直接用去根节点的方法

document.getRootElement().asXML()