您的位置:首页 > 其它

使用dom4j解析XML

2012-03-22 08:33 274 查看
package com.cmldemo.lh;

import java.io.File;

import java.util.HashMap;

import java.util.Iterator;

import org.dom4j.Document;

import org.dom4j.DocumentException;

import org.dom4j.Element;

import org.dom4j.io.SAXReader;

public class MyReadXMLByDom4j {

public void iterateWholeXML(String filename, HashMap<String, BookBean> hm) {

SAXReader saxReader = new SAXReader();

try {

Document document = saxReader.read(new File(filename));

Element root = document.getRootElement();

int num = 0;

for (Iterator<?> iter = root.elementIterator(); iter.hasNext();) {

Element element = (Element) iter.next();

BookBean bean = new BookBean();

num++;

for (Iterator<?> iterInner = element.elementIterator(); iterInner

.hasNext();) {

Element elementInner = (Element) iterInner.next();

if ("name".equalsIgnoreCase(elementInner.getName())) {

bean.setName(elementInner.getText());

} else if ("author"

.equalsIgnoreCase(elementInner.getName())) {

bean.setAuthor(elementInner.getText());

}

hm.put("book" + num, bean);

}

}

} catch (DocumentException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

public static void main(String[] args) {

MyReadXMLByDom4j demo = new MyReadXMLByDom4j();

HashMap<String, BookBean> hm = new HashMap<String, BookBean>();

demo.iterateWholeXML("WebRoot/book.xml", hm);

Iterator<BookBean> itr = hm.values().iterator();

while (itr.hasNext()) {

System.out.println(itr.next().getName() + itr.next().getAuthor());

}

}

}

package com.cmldemo.lh;

public class BookBean {

private String name;

private String author;

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public String getAuthor() {

return author;

}

public void setAuthor(String author) {

this.author = author;

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: