国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
dom4j學習筆記_薛群謀---華南師大----lennysky

一、生成xml文件
1. 下載dom4j-1.6.1.jar和jaxen-1.1-beta-10.jar,下載地址分別如下:
        http://www.dom4j.org/
        http://jaxen.codehaus.org/releases.html

注:本文附帶的源碼中有以上兩個JAR文件。

2. 寫一個批處理文件dom4j.bat,內容如下:

set CLASSPATH=c:\test\jar\jaxen-1.1-beta-10.jar;c:\test\jar\dom4j-1.6.1.jar;%CLASSPATH%

3. 編寫代碼(編譯前運行一下dom4j.bat),成功運行后會在cmd內顯示生成的xml文件的內容,而且在C盤下會生成“output.xml”文件。大部分代碼摘自官方網(wǎng)站的quick start,我做了些修正,因為官方的不能直接運行。代碼如下:

import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.XMLWriter;
import java.io.IOException;
import java.io.FileWriter;

public class CreateXML {

   // 輸出XML數(shù)據(jù)
   public void write(Document document) throws IOException {

    // xml 標準格式,保存到文件
    OutputFormat format = OutputFormat.createPrettyPrint();
    XMLWriter writer = new XMLWriter(new FileWriter( "c:\\output.xml" ), format );
    writer.write( document );
    writer.close();

    // 緊湊的格式,System.out顯示(
    format = OutputFormat.createCompactFormat();
    writer = new XMLWriter( System.out, format );
    System.out.println("\r\n------------------Start------------------");
    writer.write( document );
    System.out.println("\r\n-------------------End-------------------");
    writer.close();

   }

   // 返回XML對象
   public Document createDocument() {
    Document document = DocumentHelper.createDocument();
    Element root = document.addElement( "root" );

    Element author1 = root.addElement( "author" )
     .addAttribute( "name", "James" )
     .addAttribute( "location", "UK" )
     .addText( "James Strachan" );
   
    Element author2 = root.addElement( "author" )
     .addAttribute( "name", "Bob" )
     .addAttribute( "location", "US" )
     .addText( "Bob McWhirter" );

    return document;
   }

   public static void main(String[] args) {
    CreateXML dom4j = new CreateXML();
    try {
     dom4j.write(dom4j.createDocument());

    } catch (IOException e) {
     System.out.println(e.getMessage());
    }
   }
}

4. 運行過程和結果:

C:\test>dom4j.bat

C:\test>set CLASSPATH=c:\test\jar\jaxen-1.1-beta-10.jar;c:\test\jar\dom4j-1.6.1.
jar;.;c:\jdk1.5\lib

C:\test>javac CreateXML.java

C:\test>java CreateXML

------------------Start------------------
<?xml version="1.0" encoding="UTF-8"?>
<root><author name="James" location="UK">JamesStrachan</author><author name="Bob" location="US">BobMcWhirter</author></root>
-------------------End-------------------

C:\test>

二、獲取XML文件中的數(shù)據(jù)

代碼如下:

import java.net.URL;
import java.io.IOException;
import java.io.FileWriter;
import java.io.File;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.XMLWriter;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.io.SAXReader;

public class Parse_1 {

     public Document parse(String sfile) throws DocumentException {
         SAXReader reader = new SAXReader();
         Document document = reader.read(new File(sfile));
         return document;
     }

public void write(Document document) throws IOException {

         // xml的格式,System.out顯示(
         OutputFormat format = OutputFormat.createPrettyPrint();
         XMLWriter writer = new XMLWriter( System.out, format );
         System.out.println("\r\n------------------Start------------------");
         writer.write( document );
          System.out.println("\r\n-------------------End-------------------");
    }

public static void main(String[] args) {
   Parse_1 dom4j = new Parse_1();
   try {
    dom4j.write(dom4j.parse("c:\\output.xml"));

   } catch (IOException e) {
    System.out.println(e.getMessage());
   } catch (DocumentException e) {
    System.out.println(e.getMessage());
   }
}
}

運行過程和結果:

C:\test>dom4j

C:\test>set CLASSPATH=c:\test\jar\jaxen-1.1-beta-10.jar;c:\test\jar\dom4j-1.6.1.
jar;.;c:\jdk1.5\lib

C:\test>javac Parse_1.java

C:\test>java Parse_1

------------------Start------------------
<?xml version="1.0" encoding="UTF-8"?>

<root>
<author name="James" location="UK">James Strachan</author>
<author name="Bob" location="US">Bob McWhirter</author>
</root>

-------------------End-------------------

C:\test>

三、獲取、修改XML元素

代碼如下:

import java.io.IOException;
import java.io.File;
import java.util.Iterator;
import java.util.List;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.XMLWriter;
import org.dom4j.io.SAXReader;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Node;
import org.dom4j.Element;
import org.dom4j.io.OutputFormat;
import org.dom4j.Attribute;

public class Parse_2 {

public Document parse(String sfile) throws DocumentException {
         SAXReader reader = new SAXReader();
         Document document = reader.read(new File(sfile));
         return document;
     }

public void bar(Document document) throws IOException {


     List list = document.selectNodes( "http://author" );
     Iterator iter=list.iterator();
  
   System.out.println("\r\n****** 獲取的數(shù)據(jù)如下 ******");
   while(iter.hasNext()){
    Element titleElement=(Element)iter.next();
    // 修改xml元素
    if(titleElement.getText().equals("James Strachan")) {
     titleElement.setText("Faint Heipark");
    }
    System.out.print(titleElement.valueOf( "@name" ) + ":");
    System.out.println(titleElement.getText());
   }
  
   // 輸出全部原始數(shù)據(jù)
   OutputFormat format = OutputFormat.createPrettyPrint();
         XMLWriter writer = new XMLWriter( System.out, format );
   System.out.println("\r\n------------------Start------------------");
         writer.write( document );
   System.out.println("\r\n-------------------End-------------------");
     }

public static void main(String[] args) {
   Parse_2 dom4j = new Parse_2();
   try {
    dom4j.bar(dom4j.parse("c:\\output.xml"));

   } catch (Exception e) {
    System.out.println(e.getMessage());
   }
}
}


運行結果:

C:\test>java Parse_2

****** 獲取的數(shù)據(jù)如下 ******
James:Faint Heipark
Bob:Bob McWhirter

------------------Start------------------
<?xml version="1.0" encoding="UTF-8"?>

<root>
<author name="James" location="UK">Faint Heipark</author>
<author name="Bob" location="US">Bob McWhirter</author>
</root>

-------------------End-------------------

轉貼網(wǎng)址:http://hi.baidu.com/lennyxue/blog/item/1fc3a82560cac46135a80f5f.html

本站僅提供存儲服務,所有內容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權內容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
使用Dom4j解析XML
使用dom4j和XPath
利用dom4j生成XML
克隆xml節(jié)點
XML文件操作之dom4j
Java開發(fā)筆記 — dom4j 和 xpath
更多類似文章 >>
生活服務
分享 收藏 導長圖 關注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服