亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

為什么我的setId報錯


package handler;


import java.awt.print.Book;


import org.xml.sax.Attributes;

import org.xml.sax.SAXException;

import org.xml.sax.helpers.DefaultHandler;


public class SAXParserHandler extends DefaultHandler {

int bookIndex = 0;

? ? /*

? ? ?*用來標識解析開始?

? ? ?*/

? ? @Override

? ? public void startDocument() throws SAXException {

? ? super.startDocument();

? ? System.out.println("SAX解析開始");

? ? }

? ? /*

? ? ?*用來標識解析開始?

? ? ?*/

? ? @Override

? ? public void endDocument() throws SAXException {

? ? super.endDocument();

? ? System.out.println("SAX解析結束");

? ? }

? ? /*

? ? ?*解析xml元素?

? ? ?*/

? ? @Override

? ? public void startElement(String uri, String localName, String qName,

? ? Attributes attributes) throws SAXException {

? ? // 調用DefaultHandler類的startElement方法

? ? super.startElement(uri, localName, qName, attributes);

? ? //開始解析book元素的屬性

? ? if (qName.equals("book")){

? ? bookIndex++;

? ? ? Book book = new Book();

? ? System.out.println("===================下面開始遍歷第"+bookIndex+"本書的內容===================");

// ? ? ? ? ? String value = attributes.getValue("id");

// ? ? System.out.println("book的屬性值是:" + value);

? ? int num = attributes.getLength();

? ? for (int i = 0;i < num;i++){

? ? System.out.print("book元素的第"+(i+1)+"個屬性名是"

? ? ? ? ? ? ?+attributes.getQName(i));

? ? System.out.println("---屬性值是:"+attributes.getValue(i));

? ? if (attributes.getQName(i).equals("id")){

? ? book.setId(attributes.getValue(i));

? ? }

? ? }

? ? }

? ? else if (!qName.equals("book") && !qName.equals("bookstore")){

? ? System.out.print("節點名是:"+qName);

? ? }

? ? }

? ??

? ? @Override

? ? public void endElement(String uri, String localName, String qName) throws SAXException {

? ? // 調用DefaultHandler類的endElement方法?

? ? super.endElement(uri, localName, qName);

? ? //判斷是否針對一本書已經遍歷結束

? ? if (qName.equals("book")){

System.out.println("===================結束遍歷第"+bookIndex+"本書的內容===================");

? ? }

? ? }

? ??

? ? @Override

? ? public void characters(char[] ch, int start, int length) throws SAXException {

? ? // TODO 自動生成的方法存根

? ? super.characters(ch, start, length);

? ? String value = new String(ch, start, length);

? ? if(!value.trim().equals("")){

? ? System.out.println("---節點值是:"+value);

? ? }

? ? }

? ??

}



正在回答

1 回答

多了一個book的導入

1 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

為什么我的setId報錯

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號