jdom解析xml

来源:互联网 发布:编程语言实现模式 代码 编辑:程序博客网 时间:2024/05/23 01:18
package com.jdom;


import java.io.FileInputStream;


import java.io.IOException;
import java.util.List;


import org.jdom.*;
import org.jdom.input.SAXBuilder;


public class 解析xml3 {


private static String tabs(int tab){
String s ="";
for (int i = 0; i < tab; i++) {
s+="    ";

}
return s;
}




public static void digui(Element e, int tab){
System.out.print(tabs(tab));
System.out.print("<" + e.getName() ); //<songs>

if(e.getAttributeValue("name")!=null) {
System.out.print(" name=\"" + e.getAttributeValue("name") + "\"");
}
System.out.print(">");

String text = e.getTextTrim();
if(!text.equals("")) {
System.out.print(text);
}else {
System.out.println();
}

List lst = e.getChildren();
for (Object object : lst) {
digui((Element)object, tab + 1);
}
if(!lst.isEmpty()) System.out.print(tabs(tab)); //
System.out.println("</" + e.getName() + ">");

}


public static void main(String[] args) throws JDOMException, IOException {
SAXBuilder saxBuilder = new SAXBuilder();
Document document = saxBuilder.build(new FileInputStream("e:/wang_fei.xml"));
Element root = document.getRootElement();
digui(root, 0);
}


}