`

dom4j解析xml

    博客分类:
  • xml
xml 
阅读更多
import org.dom4j.io.SAXReader;

//使用dom4j解析xml
public class Dom4j {

private List<Person> bookList = null;
private Person book = null;

public List<Person> getPersons(File file){
SAXReader reader = new SAXReader();
try {
Document document = reader.read(file);
Element bookstore = document.getRootElement();
Iterator storeit = bookstore.elementIterator();

bookList = new ArrayList<Person>();
while(storeit.hasNext()){
book = new Person();
Element bookElement = (Element) storeit.next();
//遍历bookElement的属性  
List<Attribute> attributes = bookElement.attributes();
for(Attribute attribute : attributes){
if(attribute.getName().equals("id")){
String id = attribute.getValue();
book.setId(id);
}
}
Iterator bookit = bookElement.elementIterator();
while(bookit.hasNext()){
Element child = (Element) bookit.next();
String nodeName = child.getName();
if(nodeName.equals("name")){
String name = child.getStringValue();
book.setName(name);
}else if(nodeName.equals("email")){
String email = child.getStringValue();
book.setEmail(email);
}
}
bookList.add(book);
book = null;
}
}catch(DocumentException e){
e.printStackTrace();
}
return bookList;
}

public static void main(String[] args) {
long s = System.currentTimeMillis();
File file = new File("persons.xml");
List<Person> bookList = new Dom4j().getPersons(file);
for(Person book : bookList){
System.out.println(book);
}
long o = System.currentTimeMillis();
System.out.println(o-s);
}
}
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics