我是XML的新手,我尝试修改xml文件。 让我解释一下我想做什么。我有一个现有的文件,写了几行,但我想保留它们并添加其他文件。
我的例子不按我想要的方式工作。它会删除所有内容,并编写新的XML。
我需要阅读以了解如何做到这一点?
这是我的java代码:
public static void WriteFile(){
try{
XMLOutputFactory xMLOutputFactory = XMLOutputFactory.newFactory();
XMLStreamWriter xMLStreamWriter = xMLOutputFactory.
createXMLStreamWriter(new FileOutputStream("src\\data\\orders.xml"));
xMLStreamWriter.writeStartDocument("1.0");
xMLStreamWriter.writeStartElement("products");
xMLStreamWriter.writeStartElement("product");
//set description
xMLStreamWriter.writeStartElement("description");
xMLStreamWriter.writeCharacters("Apple MacBook Air A 11.6 Mac OS X v10.7 Lion MacBook");
xMLStreamWriter.writeEndElement();
//end description
//set price
xMLStreamWriter.writeStartElement("price");
xMLStreamWriter.writeAttribute("currency","USD");
xMLStreamWriter.writeCharacters("999");
xMLStreamWriter.writeEndElement();
//end price
xMLStreamWriter.writeEndElement();
//end produtcs
xMLStreamWriter.writeEndElement();
//end produtc
xMLStreamWriter.flush();
xMLStreamWriter.close();
}catch (Exception e){
System.out.println(e.getMessage());
}
}
答案 0 :(得分:-1)
您的代码使用XML Stream Writer在文件位置写入一些数据。文件存在并恰好包含XML这一事实无关紧要,因为您的代码只会覆盖它。
你现在做的是:
您需要的是:
对于步骤2,3和4,您可以使用新文件,然后覆盖旧文件。