My Java Blog Park

          簡單的DOM(java)的操作

          package wlz.xml;

          import javax.xml.parsers.*;
          import org.w3c.dom.*;
          //import javax.xml.transform.*;
          //import javax.xml.transform.dom.DOMSource;
          //import javax.xml.transform.stream.StreamResult;
          import java.io.*;
          import org.apache.xml.serialize.*;

          public class WriteXml {
          ??? public static void writeXml(Document doc,String filename) throws Exception{
          ??????? /*TransformerFactory tf=TransformerFactory.newInstance();
          ??????? Transformer f=tf.newTransformer();
          ??????? //f.setOutputProperties();
          ??????? DOMSource source=new DOMSource(doc);
          ??????? StreamResult result=new StreamResult(new File(filename));
          ??????? f.transform(source,result);*/
          ?????? ?
          ??????? FileOutputStream fos = new FileOutputStream(filename);
          ??????? OutputFormat of = new OutputFormat("XML","GB2312",true);
          ??????? of.setIndent(2);
          ??????? of.setIndenting(true);
          ??????? XMLSerializer serializer = new XMLSerializer(fos,of);
          ?????? ?
          ??????? serializer.asDOMSerializer();
          ??????? serializer.serialize(doc.getDocumentElement());
          ??????? fos.close();
          ??? }
          ?? ?
          ??? public static void outputElement(Document doc,String elementName){
          ??????? NodeList list= doc.getElementsByTagName(elementName);
          ??????? System.out.println("------------------------------------------");
          ??????? for(int i=0;i<list.getLength();i++){
          ??????????? System.out.println(elementName+"="+list.item(i).getFirstChild().getNodeValue()); //取出元素的值
          ??????? }
          ??????? System.out.println("------------------------------------------");
          ??? }
          ?? ?
          ??? public static void addElement(Document doc,Element root,String name,String age,String sex){
          ??????? Element student=doc.createElement("student");
          ??????? Element ename=doc.createElement("name");
          ??????? Element eage=doc.createElement("age");
          ??????? Element esex=doc.createElement("sex");
          ???????????? ?
          ??????? ename.appendChild(doc.createTextNode(name));
          ??????? eage.appendChild(doc.createTextNode(age));
          ??????? esex.appendChild(doc.createTextNode(sex));
          ?????? ?
          ??????? student.appendChild(ename);
          ??????? student.appendChild(eage);
          ??????? student.appendChild(esex);
          ?????? ?
          ??????? root.appendChild(student);
          ??? }
          ?? ?
          ??? public static Document createDocument() throws Exception{
          ??????? DocumentBuilderFactory dbf=DocumentBuilderFactory.newInstance();
          ??????? DocumentBuilder db=dbf.newDocumentBuilder();
          ??????? Document doc=db.newDocument();
          ??????? return doc;
          ??? }
          ?? ?
          ??? public static void main(String[] args) throws Exception{
          /*
          output the xml
          <class name="計算機1班">
          ?? ?<student>
          ?? ??? <name>
          ?? ??? <age>
          ?? ??? <sex>
          ??? </student>
          ??? <student>
          ?????? <name>
          ?????? <age>
          ?????? <sex>
          ??? </student>
          </class>

          ?*/?? ?
          ??????? Document doc=createDocument();
          ??????? doc.createProcessingInstruction("encoding","gb2312");
          ??????? Element root=doc.createElement("class");
          ??????? root.setAttribute("name","計算機1班");
          ??????? doc.appendChild(root);
          ?????? ?
          ??????? addElement(doc,root,"黃蓉","30","女");
          ??????? addElement(doc,root,"郭靖","32","男");
          ??????? addElement(doc,root,"楊過","8","男");
          ?????? ?
          ??????? outputElement(doc,"name");
          ??????? outputElement(doc,"sex");
          ?????? ?
          ??????? writeXml(doc,"mydomxml.xml");
          ??????? System.out.println("output ok.");
          ?????????????? ?
          ??? }
          }

          posted on 2006-09-26 14:36 2195113 閱讀(194) 評論(0)  編輯  收藏 所屬分類: XML (SAX & DOM & JDOM)


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 安仁县| 河西区| 永靖县| 晋城| 兰西县| 唐海县| 通海县| 台山市| 西盟| 芜湖市| 大竹县| 德钦县| 甘肃省| 伊吾县| 富川| 碌曲县| 崇信县| 延川县| 新闻| 尖扎县| 同仁县| 洪雅县| 伊川县| 尚志市| 嘉黎县| 全南县| 军事| 安岳县| 盖州市| 密云县| 株洲县| 吐鲁番市| 崇仁县| 乃东县| 彭水| 泊头市| 灌南县| 临澧县| 汶川县| 蓬溪县| 永昌县|