我正在使用Windows操作系统, 并且想要解析xml文件,但是得到空指针错误....
public void print( )
throws SAXException, IOException {
DocumentBuilder builder;
Document document = builder.parse( "D:\\my\\xml.xml");//null pointer exception
}
这是解决方案:
public class DOMPrinter {
private DocumentBuilder builder;
public void print(String fileName )//, PrintStream out)
throws SAXException, IOException {
try
{
DocumentBuilderFactory fact= DocumentBuilderFactory.newInstance();
builder= fact.newDocumentBuilder();
Document document = builder.parse( fileName);
Node node = document.getDocumentElement();
String root = node.getNodeName();
System.out.println("Root Node: " + root);
}
catch (Exception e) {
// TODO: handle exception
}
}
我没有使用DocumentBuilderFactory来创建DocumentBuilder,因此这是一个错误。
答案 0 :(得分:2)
您从未实例化builder
。你需要说builder = ...
;
此外,您不能在方法中包含私有字段。删除私人关键字。