用IBM的JDK不会出现的问题,但用SUN的JDK会出现的问题
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
File file = new File("D:/test/date.xml");
org.w3c.dom.Document document = builder.parse(file);
用sun的JDK,当这段代码解析错误时,应该程序没结束,date.xml文件是无法删除的。
这时应该采用下面这种方式,在finally里面把流关闭。就可以在应用程序运行中把date.xml删除。
InputStream ?is = new BufferedInputStream(new FileInputStream(file));
org.w3c.dom.Document document = builder.parse(is);