老師,這里為什么會(huì)有空指針異常。。
package?test_XML;
import?java.io.IOException;
import?javax.xml.parsers.DocumentBuilder;
import?javax.xml.parsers.DocumentBuilderFactory;
import?javax.xml.parsers.ParserConfigurationException;
import?org.w3c.dom.Document;
import?org.w3c.dom.NamedNodeMap;
import?org.w3c.dom.Node;
import?org.w3c.dom.NodeList;
import?org.xml.sax.SAXException;
public?class?DOM_XML_Test?{
public?static?void?main(String[]?args){
try?{
DocumentBuilderFactory?dbf?=?DocumentBuilderFactory.newInstance();
DocumentBuilder?db?=dbf.newDocumentBuilder();
Document?document?=?db.parse("book.xml");
NodeList?bookList?=?document.getElementsByTagName("book");
System.out.println("咱們書店共有"+bookList.getLength()+"本書");
for(int?i=0;i<bookList.getLength();i++){
System.out.println("下面開始遍歷第"+(i+1)+"本書的內(nèi)容");
Node?book?=?bookList.item(i);
NamedNodeMap?attributes=book.getAttributes();
System.out.println("第"+(i+1)+"本書共有"+attributes.getLength()+"個(gè)屬性");
for(int?j=0;?i<attributes.getLength();j++){
Node?attr?=?attributes.item(j);
System.out.print("屬性名"+attr.getNodeName());
System.out.print("屬性值"+(String)attr.getNodeValue());
}
}
}?catch?(SAXException?e)?{
e.printStackTrace();
}?catch?(IOException?e)?{
e.printStackTrace();
}?catch?(ParserConfigurationException?e)?{
e.printStackTrace();
}
}
}找半天沒看明白怎么就有空指針異常了呢?
2015-12-31
打斷點(diǎn)調(diào)試一下,是不是bookList就是空的
2015-12-31
2015-12-31
就在哪個(gè)get屬性名和屬性值的地方 ?提示有空指針異常 ?沒明白。。。