XML解析SAX
发布时间:2020-12-16 02:16:30 所属栏目:百科 来源:网络整理
导读:public class SaxXML extends DefaultHandler { private ListBook bookList; private Book book; private String tagName; public void startDocument (){ bookList = new ArrayListBook(); System.out.println( "开始读文挡了" ); } @Override public void
public class SaxXML extends DefaultHandler {
private List<Book> bookList;
private Book book;
private String tagName;
public void startDocument(){
bookList = new ArrayList<Book>();
System.out.println("开始读文挡了");
}
@Override
public void startElement(String uri,String localName,String qName,Attributes attributes) throws SAXException {
System.out.println("开始读元素了");
if("Book".equals(qName)){
book = new Book();
book.setId(Integer.parseInt(attributes.getValue("id")));
}
tagName = qName;
}
@Override
public void characters(char[] ch,int start,int length)
throws SAXException {
System.out.println("文本解析中");
if(book !=null){
String content = new String(ch,start,length);
if(tagName.equals("bookName")){
book.setBookName(content);
}else if(tagName.equals("bookAuthor")){
book.setBookAuthor(content);
}if(tagName.equals("bookISBN")){
book.setBookISBN(content);
}else if(tagName.equals("bookPrice")){
book.setBookPrice(Double.parseDouble(content));
}
}
}
@Override
public void endElement(String uri,String qName)
throws SAXException {
System.out.println("元素结束了");
if(qName.equals("Book")){
bookList.add(book);
book=null;
}
tagName="";
}
@Override
public void endDocument() throws SAXException {
System.out.println("文档结束了");
}
public List<Book> getBookList() {
return bookList;
}
}
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |