中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

dom4j怎么修改xml節點內容

小億
139
2023-12-14 21:07:16
欄目: 編程語言

使用dom4j修改xml節點內容的基本步驟如下:

  1. 導入dom4j相關的包和類:
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.XMLWriter;
  1. 加載xml文件并獲取根節點:
Document document = DocumentHelper.parseText(xmlString); // 或者使用DocumentHelper.parseText(xmlString)加載字符串形式的xml
Element root = document.getRootElement();
  1. 使用XPath表達式或遍歷方式找到要修改的節點,并修改其內容: 使用XPath表達式:
Element node = (Element) document.selectSingleNode("//節點路徑"); // 替換節點路徑為實際的路徑
node.setText("新的內容"); // 替換新的內容為實際要修改的內容

使用遍歷方式:

Iterator<Element> iterator = root.elementIterator("節點名"); // 替換節點名為實際的節點名
while (iterator.hasNext()) {
    Element element = iterator.next();
    element.setText("新的內容"); // 替換新的內容為實際要修改的內容
}
  1. 將修改后的xml保存到文件或輸出到控制臺:
OutputFormat format = OutputFormat.createPrettyPrint(); // 創建格式化輸出
XMLWriter writer = new XMLWriter(new FileOutputStream("文件路徑"), format); // 替換文件路徑為實際保存的路徑
writer.write(document);
writer.close();

或者直接輸出到控制臺:

OutputFormat format = OutputFormat.createPrettyPrint(); // 創建格式化輸出
XMLWriter writer = new XMLWriter(System.out, format);
writer.write(document);
writer.close();

完整示例代碼如下:

import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.XMLWriter;

import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;

public class ModifyXML {

    public static void main(String[] args) {
        try {
            // 加載xml文件并獲取根節點
            Document document = DocumentHelper.parseText("<root><node>原始內容</node></root>"); // 或者使用DocumentHelper.parseText(xmlString)加載字符串形式的xml
            Element root = document.getRootElement();

            // 使用XPath表達式或遍歷方式找到要修改的節點,并修改其內容
            Element node = (Element) document.selectSingleNode("//node"); // 替換節點路徑為實際的路徑
            node.setText("新的內容"); // 替換新的內容為實際要修改的內容

            // 將修改后的xml保存到文件或輸出到控制臺
            OutputFormat format = OutputFormat.createPrettyPrint(); // 創建格式化輸出
            XMLWriter writer = new XMLWriter(new OutputStreamWriter(new FileOutputStream("test.xml"), "UTF-8"), format); // 替換文件路徑為實際保存的路徑
            writer.write(document);
            writer.close();
        } catch (DocumentException | IOException e) {
            e.printStackTrace();
        }
    }
}

以上代碼將會修改節點內容為"新的內容",并保存到名為"test.xml"的文件中。

0
当涂县| 马鞍山市| 建宁县| 额济纳旗| 方城县| 罗平县| 灵川县| 海南省| 错那县| 绵阳市| 鱼台县| 巫溪县| 乌兰浩特市| 禄劝| 镇巴县| 富锦市| 彭水| 永新县| 景宁| 昆山市| 防城港市| 卓资县| 漳浦县| 桑植县| 师宗县| 襄汾县| 明光市| 湘潭县| 浦县| 洪江市| 黄陵县| 泽库县| 罗城| 衡阳市| 依兰县| 含山县| 扬中市| 龙江县| 师宗县| 舞阳县| 左云县|