📄 bookhandler.java.txt
字号:
import java.util.*;
import java.io.*;
import org.xml.sax.*;
public class BookHandler extends HandlerBase{
//用于保存搜索结果的Vector
private Vector bookList;
//得到处理的当前元素
private Book currBook;
private Pair currPricePair;
BookHandler(){
bookList = new Vector();
}
public Vector getBooks(){
return bookList;
}
public void startElement(
String name,AttributeList attribute)throws SAXException{
currTag = name;
if (currTag.equals("BOOK"))
currBook = new Book();
else if(currTag.equals("SITENAME"))
currPricePair = new Pair();
System.out.println("Start:<" + name + ">");
}
public void endElement(String name)
throws SAXException{
currTag = name;
if (currTag.equals("BOOK"))
bookList.addElement(currBook);
else if(currTag.equals("PRICE"))
currBook.addPricePair(currPricePair);
System.out.println("End:<" + name + ">");
}
public void characters(char ch[],int start,int length)throws SAXException{
String contents = new String(ch,start,length);
//在当前Book对象各域中填入已解析数据
if(currTag.equals("TITLE"))
currBook.setTitle(contents);
else if (currTag.equals("AUTHOR"))
currBook.setAuthor(contents);
else if(currTag.equals("PUBLISHER"))
currBook.setPublisher(contents);
else if(currTag.equals("ISBN"))
currBook.setIsbn(contents);
else if(currTag.equals("SITENAME"))
currPricePair.setSitename(contents);
else if(currTag.equals("PRICE"))
currPricePair.setPrice(contents);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -