解析XML檔案——JDOM基本操作
阿新 • • 發佈:2019-01-08
注意,下載完JDOM的元件後,只需要將jdom-2.0.6.jar這一個jar包匯入編譯器即可
1.JDOM生成XML檔案
import org.jdom2.Attribute;
import org.jdom2.Document;
import org.jdom2.Element;
import org.jdom2.output.XMLOutputter;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
public class Main {
public static void main(String[] args) {
//定義各個節點
Element stulist = new Element("stulist");
Element link = new Element("link");
Element name = new Element("name");
Element age = new Element("age");
//定義屬性
Attribute id = new Attribute("id","id");
//宣告Document物件
Document doc = new Document(stulist);
//設定元素內容
name.setText("cc");
age.setText("17");
//設定name的屬性
name.setAttribute(id);
//設定子節點
link.addContent(name);
link.addContent(age);
stulist.addContent(link);
//用來輸出XML檔案
XMLOutputter op = new XMLOutputter();
//設定輸出的編碼
op.setFormat(op.getFormat().setEncoding("utf-8"));
try {
//輸出XML檔案
op.output(doc,new FileOutputStream("C:" + File.separator + "JDOM.xml"));
} catch (IOException e) {
e.printStackTrace();
}
}
}
2.JDOM讀取XML檔案
import org.jdom2.Document;
import org.jdom2.Element;
import org.jdom2.input.SAXBuilder;
import java.io.File;
import java.util.List;
public class Main {
public static void main(String[] args) throws Exception {
//建立SAX解析
SAXBuilder buil = new SAXBuilder();
//找到Document
Document read_doc = buil.build("C:" + File.separator + "JDOM.xml");
//讀取根元素
Element stu = read_doc.getRootElement();
//得到全部link元素
List list = stu.getChildren("link");
for (int i = 0; i < list.size(); i++) {
//取得一個link子元素
Element e = (Element) list.get(i);
//取name元素內容
String name = e.getChildText("name");
//取得name元素的id屬性
String id = e.getChild("name").getAttribute("id").getValue();
//取得age元素內容
String age = e.getChildText("age");
System.out.println("--聯絡人--");
System.out.println("id:" + id);
System.out.println("name:" + name + ",age:" + age);
System.out.println("-------");
}
}
}