2015-05-05 330 views
0
DOMSource source = new DOMSource(document); 
       ewFile = barcoUtil.getEwFile(Ew_Thread.ewLogger); 
       StreamResult result = new StreamResult(ewFile); 
       System.out.println("Ok I have came here--->"+ewFile.getAbsolutePath()); 
       transformer.transform(source, result); 

它產生FileNotFoundException異常transformer.transform(..拋出一個IO異常/文件未發現異常

Ok I have came here--->F:\Barco\employwise-barco files\EW_2015-05-05 14-35-55.txt 
javax.xml.transform.TransformerException: java.io.FileNotFoundException: F:\Barco\employwise-barco%20files\EW_2015-05-05%2014-35-55.txt (The system cannot find the path specified) 
    at org.apache.xalan.transformer.TransformerIdentityImpl.createResultContentHandler(TransformerIdentityImpl.java:297) 

但文件已經存在。

我唯一的疑問是,作爲URL在拋出的異常中包含%20代替空格,可能是窗口無法識別路徑。

還有什麼原因?

+0

如何將XML文件加載到'document'文件中?你使用'DocumentBuilder.parse'嗎? – Stephan

+0

昨天實際解決了。在ewFile上使用.getPath()。 Windows無法加載%20的路徑。 –

+1

好。我建議你回答你自己的問題,並將其標記爲已回答。 – Stephan

回答

1

解決了問題昨天,問題出現在包含%20的路徑中。我改變

StreamResult result = new StreamResult(ewFile); 到StreamResult result = new StreamResult(ewFile.getPath());

它工作。