我正在使用带DOM的XML应用程序。我正在写文件并从文件中读取数据。两者都有效,但问题是,文件在关闭应用程序后首先实现。 为了阅读我用这个:
try {
DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
File inputFile = new File("calendar.xml");
doc = dBuilder.parse(inputFile);
doc.getDocumentElement().normalize();
System.out.println("File read in!");
System.out.println("-----------------------------");
users = doc.getElementsByTagName("user");
} catch (Exception e) {
e.printStackTrace();
}
为了写日期,我使用了这个:
try {
TransformerFactory transformerFactory = TransformerFactory.newInstance();
Transformer transformer = transformerFactory.newTransformer();
DOMSource source = new DOMSource(doc);
StreamResult result = new StreamResult(new File("calendar.xml"));
transformer.transform(source, result);
}catch (Exception e){}
实际上两者都有效,但我不知道如何在应用程序运行时刷新XML文件,以便我可以阅读我的更改。
所以,如果我得到这个例子:
<root>
<child id="1"/>
<child id="2/">
</root>
而且我添加了一个ID为“3”的新孩子,它保持不变:
<root>
<child id="1"/>
<child id="2/">
</root>
首先完成文件后:
<root>
<child id="1"/>
<child id="2/">
<child id="3"/>
</root>
但是在应用程序运行时我想要最后的结果。
帮助会很好:) Reiswaffl