I want to fly Higher!
天行健 君子以自强不息.I CAN PLAY!

dom4j 已经成为历史了,现在java操作xml应该使用jdom,它的便捷性要强得多,下面是jdom一些常用方法简介:
一、准备
import org.jdom.Document;
import org.jdom.Element;
import org.jdom.input.SAXBuilder;


String path = xml文档路径;

SAXBuilder builder = new SAXBuilder();
Document doc = builder.build(path);
③得到根节点:
Element e = doc.getRootElement();
⑤⑥⑦⑧⑨
二、操作
(1)读取
1、
①得到指定子节点:
e.getChild("节点名");
②得到指定子节点内容:
e.getChild(节点名).getValue();

e.getChildText(节点名);
③得到指定属性值:
e.getAttributeValue(属性名);
④遍历子节点:
java.util.List l = e.getChildren();    //得到所有子节点列

java.util.List l = e.getChildren();    //得到指定名字的子节点列
遍历:
        for (int i=0; i<l.size(); i++) {
            Element e2 = (Element)l.get(i);
            ArrayList tl = new ArrayList();
            tl.add(e2.getChildText("url"));
            tl.add(e2.getChildText("sm"));
            list.add(tl);
        }

(2)编辑
e.getChild(节点名).setText(内容);

(3)添加
①新建节点
Element newE = new Element(节点名);
Element sm = new Element(节点名);
②为节点添加内容
sm.addContent(内容);
③将一个节点加入另一个节点
newE.addContent(sm);
root.addContent(newE);
④为节点添加属性及值
newE.setAttribute("id",id);

(4)删除
删除当前节点:
e.getParentElement().removeContent(e);

三、写文件
import org.jdom.output.Format;
import org.jdom.output.XMLOutputter;

XMLOutputter outputter = new XMLOutputter(Format.getPrettyFormat().setEncoding("gb2312"));    //设制编码为gb2312以写入中文
java.io.OutputStream outStream = new java.io.FileOutputStream(path);
outputter.output(doc, outStream);
outStream.flush();
outStream.close();

posted on 2013-11-12 17:28  今晚打老虎&  阅读(161)  评论(0编辑  收藏  举报