我正在讀取XML文件,處理元素並使用從輸入文件中提取的元素編寫另一個XML文件。 爲此,我使用StAX遊標:我使用XMLStreamReader讀取元素,並使用XMLStreamWriter在另一個文件中寫入元素。刪除XML輸入文件Java
讀者:
XMLInputFactory inputFactory = XMLInputFactory.newInstance();
XMLStreamReader streamReader = inputFactory.createXMLStreamReader(new FileReader(inputFile));
筆者:
XMLOutputFactory outputFactory = XMLOutputFactory.newInstance();
XMLStreamWriter streamWriter = outputFactory.createXMLStreamWriter(new FileOutputStream (outputFile),"UTF-8");
後,我完成處理和寫輸出文件,我想刪除我讀文件(輸入文件)。對於我正在使用的trhis:
public void deleteInputFile(String inputFile) {
File fileToDelete = new File(inputFile);
if(fileToDelete.delete()){
System.out.println(fileToDelete.getName() + " is deleted!");
}else{
System.out.println("Delete operation is failed.");
}
}
所有程序都正常工作,但刪除操作失敗。我收到回覆:
刪除操作失敗。
我認爲閱讀器在閱讀後關閉輸入文件。
問題是,編寫我需要的文件後,我做了什麼刪除輸入文件?
嘗試關閉的FileReader? – dnault
@dnault關閉流只是停止讀取或寫入操作,但不涉及文件 –
請確保'streamReader' /'streamWriter'已關閉 –