public class XmlTest {
//查询所有的数据
public static void list() throws JDOMException, IOException {
SAXBuilder builder = new SAXBuilder();
InputStream file = new FileInputStream("src/po.xml");
//System.out.println(file.available());
//获得文档对象
Document document = builder.build(file);
//获得根节点
Element root = document.getRootElement();
List list = root.getChildren();
System.out.println("root : "+root);
System.out.println(root.getName());
Iterator it = list.iterator();
//for(Element e:list) {
// for(int i = 0; i < list.size(); i++){
while(it.hasNext()){
Element e = (Element) it.next();
System.out.println("ID: "+e.getAttributeValue("id"));
System.out.println(e.getChildText("username"));
System.out.println(e.getChildText("password"));
//System.out.println(list.iterator().getClass().toString());
}
}
//添加数据
public static void add() throws JDOMException, FileNotFoundException, IOException {
SAXBuilder builder = new SAXBuilder();
Document document = builder.build("src/po.xml");
Element root = document.getRootElement();
Element element = new Element("person");
element.addAttribute("id","3");
Element e1 = new Element("username");
e1.setText("hello");
Element e2 = new Element("password");
e2.setText("world");
element.addContent(e1);
element.addContent(e2);
root.addContent(element);
document.setRootElement(root);
XMLOutputter output = new XMLOutputter();
output.output(document,new FileOutputStream("src/po.xml"));
}
//修改数据
public static void edit(int id) throws JDOMException, FileNotFoundException, IOException {
SAXBuilder builder = new SAXBuilder();
Document document = builder.build("src/po.xml");
Element root = document.getRootElement();
List list = root.getChildren(); Iterator it = list.iterator(); for(int i = 0; i < list.size(); i++) { Element e = (Element) it.next(); System.out.println("=============="+e.getAttributeValue("id")); if(Integer.parseInt(e.getAttributeValue("id")) == id) { e.getChild("username").setText("wuchao"); e.getChild("password").setText("jiayou"); } } XMLOutputter output = new XMLOutputter(); output.output(document,new FileOutputStream("src/po.xml")); } //删除 public static void del(int id) throws JDOMException, FileNotFoundException, IOException { SAXBuilder builder = new SAXBuilder(); Document document = builder.build("src/po.xml"); Element root = document.getRootElement(); List list = root.getChildren(); Iterator it = list.iterator(); for(int i = 0; i < list.size(); i++) { Element e = (Element) it.next(); if(Integer.parseInt(e.getAttributeValue("id")) == id) { root.removeContent(e); break; } } //文件处理 XMLOutputter out = new XMLOutputter(); out.output(document, new FileOutputStream("src/po.xml")); } public static void main(String[] args) { // XmlTest.add(); // XmlTest.edit(1); try { XmlTest.list(); } catch (JDOMException e1) { // TODO 自动生成 catch 块 e1.printStackTrace(); } catch (IOException e1) { // TODO 自动生成 catch 块 e1.printStackTrace(); } try { try { XmlTest.del(1); } catch (FileNotFoundException e) { // TODO 自动生成 catch 块 e.printStackTrace(); } catch (IOException e) { // TODO 自动生成 catch 块 e.printStackTrace(); } } catch (JDOMException e) { // TODO 自动生成 catch 块 e.printStackTrace(); } } }