Я очень новичок в XML, и я пытаюсь изменить файл xml. Позвольте мне объяснить, что я хочу делать. У меня есть существующий файл, в котором вызывается несколько строк, но я хочу сохранить их и добавить другие.изменить xml-файл с помощью API Stax Java
Мой пример не работает так, как я хочу. Он удаляет все и записывает новый 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());
}
}
Можете ли вы дать мне пример литтера, пожалуйста? – Silviu
Вот пример использования DOM: http://stackoverflow.com/questions/6445828/how-do-i-append-a-node-to-an-existing-xml-file-in-java Я предлагаю это один над StAX, так как его проще разбирать в выходящем файле. Конечно, вы можете использовать StAX, но он немного более подробный. –