利用dom4j來生成xml檔案
在利用dom4j來生成xml檔案的時候,當然需要先將dom4j的包引進來,好的是在hibernate的lib下自帶了一個dom4j,也可以利用過來,
如果要生成這樣的xml檔案:
<?xml version="1.0" encoding="UTF-8"?>
<SubOutGateInfo>
<ShipSideName>NPEDI</ShipSideName>
<GateName>1</GateName>
<ChannelCode>1</ChannelCode>
<TruckCode>ZJB-XXXXX</TruckCode>
<SubOutGateContainer1>
<ContainerNo>CBHU9867210</ContainerNo>
<IEFlag>I</IEFlag>
<ContainerEmptyFlag>E</ContainerEmptyFlag>
<ContainerType>CP</ContainerType>
<TradeType>w</TradeType>
</SubOutGateContainer1>
<SubOutGateContainer2>
<ContainerNo></ContainerNo>
<IEFlag></IEFlag>
<ContainerEmptyFlag></ContainerEmptyFlag>
<ContainerType></ContainerType>
<TradeType></TradeType>
</SubOutGateContainer2>
</SubOutGateInfo>
該如何利用dom4j生成呢(當然也可以不利用dom4j生成xml檔案,這裡只是記錄dom4j生成xml檔案的用法)?下述程式碼將在F盤生成一個名為“text.xml”的xml檔案.
import java.io.FileWriter;
import java.util.Iterator;
import java.util.List;
import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.dom4j.Node;
public class Test {
public static void main(String[] args) throws Exception {
Document document = DocumentHelper.createDocument();
/**
* 新建一個根標記<SubOutGateInfo></SubOutGateInfo>
*/
Element root = document.addElement("SubOutGateInfo");
/**
* 在根標記下建立一個子標記<ShipSideName></ShipSideName>
* 並利用setText(String str)方法為其標記設定了一個值"NPEDI"
* 此時xml檔案為:
* <SubOutGateInfo>
* <ShipSideName>NPEDI</ShipSideName>
* </SubOutGateInfo>
*/
root.addElement("ShipSideName").setText("NPEDI");
/**
* 在根標記下建立一個子標記<GateName></GateName>
* 原理同上用setText(String str)方法為起標記設定一個值"1"
* 此時xml檔案為:
*<SubOutGateInfo>
* <ShipSideName>NPEDI</ShipSideName>
* <GateName>1</GateName>
* </SubOutGateInfo>
* 下面的用法基本雷同,不在贅述.
*/
root.addElement("GateName").setText("1");
root.addElement("ChannelCode").setText("1");
root.addElement("TruckCode").setText("ZJB-XXXXX");
root.addElement("SubOutGateContainer1");
Element subOutGetContainer1 = root.element("SubOutGateContainer1");
subOutGetContainer1.addElement("ContainerNo").setText("CBHU9867210");
subOutGetContainer1.addElement("IEFlag").setText("I");
subOutGetContainer1.addElement("ContainerEmptyFlag").setText("E");
subOutGetContainer1.addElement("ContainerType").setText("CP");
subOutGetContainer1.addElement("TradeType").setText("w");
root.addElement("SubOutGateContainer2");
Element subOutGetContainer2 = root.element("SubOutGateContainer2");
subOutGetContainer2.addElement("ContainerNo").setText("");
subOutGetContainer2.addElement("IEFlag").setText("");
subOutGetContainer2.addElement("ContainerEmptyFlag").setText("");
subOutGetContainer2.addElement("ContainerType").setText("");
subOutGetContainer2.addElement("TradeType").setText("");
//在終端列印出生成的xml檔案
System.out.println(document.asXML());
//將生成的xml檔案儲存在"F:/text.xml"檔案中
FileWriter fw = new FileWriter("F:/text.xml");
fw.write(document.asXML());
fw.flush();
fw.close();
//讀取標籤名為<ShipSideName>的值
String shipSideNameValue = root.element("ShipSideName").getText();
System.out.println(shipSideNameValue);
//獲取根標籤下的所有子標籤
List<Node> elements = (List<Node>)root.elements();
Iterator<Node> it = elements.iterator();
while(it.hasNext()){
System.out.println(it.next().getName());
}
}
}
相關文章
- Python解析XML檔案生成HTMLPythonXMLHTML
- XML和Dom4jXML
- 利用msfvenom生成木馬檔案
- 【超好用API推薦】用dom4j建立XML檔案並寫入節點APIXML
- dom4j遍歷巢狀xml巢狀XML
- xml檔案XML
- java的XML解析(DOM4J技術)JavaXML
- PowerDesigner: 利用sql指令碼檔案逆生成模型SQL指令碼模型
- DOM4J 解析 XML 之忽略轉義字元XML字元
- 為 Windows 10/11 生成 autounattend.xml 檔案 (schneegans.de)WindowsXML
- AndroidMainfest.xml檔案AndroidAIXML
- python XML 檔案解析PythonXML
- jdom解析xml檔案XML
- xml是什麼格式的檔案 xml檔案怎麼開啟XML
- java 語音用xml檔案實現圖形介面 xml檔案JavaXML
- 使用 Java 解析XML檔案JavaXML
- Go xml檔案處理GoXML
- nodejs命令列利用模板生成檔案腳手架開發NodeJS命令列
- nodejs xmlreader 讀寫xml檔案NodeJSXML
- C#讀取Xml檔案C#XML
- ajax與XML檔案互動XML
- 使用xml檔案配置SSM整合XMLSSM
- 給XML檔案定義DTDXML
- 清單檔案 AndroidManifest.xmlAndroidXML
- Java系列:讀取XML檔案JavaXML
- 利用nodejs寫一個自動生成vue元件檔案的cliNodeJSVue元件
- 怎麼解析 xml 檔案,把裡面某個元素,自動生成其 xpathXML
- 【SSM框架整合】專案xml檔案、properties等檔案的配置SSM框架XML
- SSIS 生成檔案
- 生成 api檔案API
- Mybatis 學習筆記(一)——配置檔案SqlMapConfig.xml和對映檔案Mapper.xmlMyBatis筆記SQLXMLAPP
- Linux shell格式化XML檔案LinuxXML
- 使用C#讀寫xml檔案C#XML
- XML 檔案解析實踐 (DOM 解析)XML
- 匹配 XML 檔案正規表示式XML
- 前端如何處理xml配置檔案?前端XML
- php獲取xml檔案內容PHPXML
- Maven的settings.xml檔案配置MavenXML
- php生成配置檔案config.php 生成陣列配置檔案PHP陣列