2010-10-28 33 views
1

我想在XML CV文件來修改我的名字,但是當我用這個語句:如何修改使用StAX XML元素在Java中

XMLOutputFactory xof = XMLOutputFactory.newInstance(); 
XMLStreamWriter xtw = null; 
xtw = xof.createXMLStreamWriter(new FileWriter("eman.xml")); 

文件的全部內容被刪除,變成空。基本上,我想打開(eman.xml)進行修改而不刪除其內容。

+0

您可能需要VTD XML爲這個,因爲它是唯一的支持增量更新的XML框架 – 2016-04-28 05:28:20

回答

0

如果你想在處理你的xml文件時使用STAX,你應該知道你只能讀/寫xml文件,但是如果你想修改你的xml,那麼當你在STAX中發生確切的事件時你可以進行處理對於使用DOM的ur xml。 這裏是一些例子:

 

    XMLInputFactory factory = XMLInputFactory.newInstance(); 
     XMLStreamReader xmlReader= factory.createXMLStreamReader(new FileReader(fileName)); 
     int eventType; 
     while(xmlReader.hasNext()){ 
       eventType= xmlReader.next(); 
       if(eventType==XMLEvent.START_ELEMENT) 
       { 
        QName qNqme = xmlReader.getName(); 
       if("YURTAG".equals(qNqme.toString())) 
       { 
       DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); 
       DocumentBuilder builder = factory.newDocumentBuilder(); 
       File file = new File("YOURXML.xml"); 
       Document doc = builder.parse(file); 
       //make the required processing for your file.

} }