使用jdom框架首先下载需要的jar包 :jdom.jar
然后将jdom.jar纳入到java项目的管理之中
一个例子:
package ytu.botao.xml.dom; import java.io.FileWriter; import java.io.IOException; import org.jdom.Attribute; import org.jdom.Comment; import org.jdom.Document; import org.jdom.Element; import org.jdom.output.Format; import org.jdom.output.XMLOutputter; /** * 使用jdom框架进行 对xml构造,在本地硬盘上生成xml文档 * * @author botao * */ public class JdomTest1 { /** * * @param args * @throws IOException */ public static void main(String[] args) throws IOException { Document document = new Document(); Element root = new Element("root"); document.addContent(root); Comment comment = new Comment("This is my comments"); root.addContent(comment); Element e = new Element("hello"); e.setAttribute("sohu","www.sohu.com"); root.addContent(e); Element e2 = new Element("world"); // 方法一:设置属性 Attribute attr = new Attribute("test","hehe"); e2.setAttribute(attr); e.addContent(e2); // 方法二:利用方法链的风格进行设置属性 e2.addContent(new Element("aaa").setAttribute("a","b") .setAttribute("x","y").setAttribute("gg","hh") .setText("text content")); Format format = Format.getPrettyFormat(); format.setIndent(" "); // format.setEncoding("gbk"); XMLOutputter out = new XMLOutputter(format); out.output(document,new FileWriter("jdom.xml")); } }
解析:
package ytu.botao.xml.dom; import java.io.File; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.util.List; import org.jdom.Attribute; import org.jdom.Document; import org.jdom.Element; import org.jdom.JDOMException; import org.jdom.input.SAXBuilder; import org.jdom.output.Format; import org.jdom.output.XMLOutputter; /** * 利用jdom框架进行解析和修改属性 * @author botao * */ public class JdomTest2 { /** * * @param args * @throws IOException * @throws FileNotFoundException * @throws JDOMException */ public static void main(String[] args) throws FileNotFoundException,IOException,JDOMException { SAXBuilder builder = new SAXBuilder(); Document doc = builder.build(new File("jdom.xml")); Element element = doc.getRootElement(); System.out.println(element.getName()); Element hello = element.getChild("hello"); System.out.println(hello.getText()); List list = hello.getAttributes(); for(int i = 0 ;i < list.size(); i++) { Attribute attr = (Attribute)list.get(i); String attrName = attr.getName(); String attrValue = attr.getValue(); System.out.println(attrName + "=" + attrValue); } hello.removeChild("world"); XMLOutputter out = new XMLOutputter(Format.getPrettyFormat().setIndent(" ")); out.output(doc,new FileOutputStream("jdom2.xml")); } }