首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > XML SOAP >

java 创办xml和解析xml

2012-10-14 
java 创建xml和解析xmlimport java.io.FileWriterimport java.io.IOExceptionimport java.io.PrintWrite

java 创建xml和解析xml

import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;

import org.dom4j.Document;
import org.dom4j.DocumentFactory;
import org.dom4j.Element;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.XMLWriter;

public class WriterXMLDemo {

?
public static void main(String[] args) {
??? Document doc = DocumentFactory.getInstance().createDocument();
??????? doc.addComment("Create persons.xml");
??? // 添加根元素
??? Element root = doc.addElement("persons");
???
??? // 添加根元素的第一个子元素
??? Element rootElem = root.addElement("person");
??? //添加第一个子元素的子元素?
??? Element bookName = rootElem.addElement("name");
??? bookName.addText("aaa");
??? Element bookAutor = rootElem.addElement("age");
??? bookAutor.addText("20");
???
?? //添加属性
?? Element rootElem2 = root.addElement("person");
?? rootElem2.addAttribute("name", "bbb");
?? rootElem2.addAttribute("age", "21");
?
?
?? try {
???? PrintWriter out = new PrintWriter(new FileWriter("C:/workspace/webproject/WebContent/person.xml"));
???? OutputFormat format = OutputFormat.createPrettyPrint();
???? format.setEncoding("gb2312");
???? XMLWriter xmlOut = new XMLWriter(out, format);
???? //输出xml内容
???? xmlOut.write(doc);
????
???? out.close();
???? xmlOut.close();
???? System.out.println("=========success=======");
?? } catch (IOException e) {
??????? e.printStackTrace();
????
?? }
}

}

?

?

?

?

import java.util.List;

import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;

public class ReaderXMLDemo {
?
public static void main(String[] args) {
??? SAXReader xmlReader = new SAXReader();
?? try {
??? Document doc = xmlReader.read("C:/workspace/webproject/WebContent/person.xml");

??? // 得到根元素
??? Element myRoot = doc.getRootElement();

??? // 得到根元素下所有名字为person的子元素
??? List<Element> persons = myRoot.elements("person");

??? // 得到第一个人
??? Element onePerson = persons.get(0);

??? // 得到第一个人下的名称元素
??? Element oneName = onePerson.element("name");
??? // 得到第一个人的名字值
??? String oneNameValue = oneName.getText();
??? System.out.println("oneName=====>" + oneNameValue);
???
??? Element oneAge = onePerson.element("age");
??? String oneAgeValue = oneAge.getText();
??? System.out.println("oneAge=====>" + oneAgeValue);
???
??? //第二个人
??? Element twoPerson = persons.get(1);
??? String twoNameValue = twoPerson.attributeValue("name");
??? System.out.println(twoNameValue);
??? String twoAgeValue = twoPerson.attributeValue("age");
??? System.out.println(twoAgeValue);

?? } catch (DocumentException e) {
????? e.printStackTrace();
?? }
}

}

热点排行