老師,這里為什么會(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屬性名和屬性值的地方 ?提示有空指針異常 ?沒明白。。。