我在代碼最後一行越來越例外 -javax.xml.transform.TransformerException中:java.io.FileNotFoundException:<file_name>(訪問被拒絕)
Transformer transformer = TransformerFactory.newInstance().newTransformer();
DOMSource xmlSource = new DOMSource(document);
StreamResult result;
File f = new File(sFilePath);
if (f.exists() == false) {
result = new StreamResult(f);
} else {
result = new StreamResult(sFilePath);
}
transformer.transform(xmlSource, result);
的異常堆棧跟蹤是 -
java.io.FileNotFoundException: C:\ ProgramData \配置\ .XML(Access是 拒絕)堆棧跟蹤javax.xml.transform.TransformerException中: java.io.FileNotFoundException: C:\ ProgramData \配置\。 xml(訪問被拒絕 )在 com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.getOutputHandler(未知 來源)在 com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl (未知來源)在 com ..main.dr.a(未知來源)在 com ..main.dr.a(未知來源)在 com..main.hk(Unknown Source)at com..main.ay.run(Unknown Source)引起者: java.io.FileNotFoundException: C:\ ProgramData。\ config \ .xml(Access is denied )在java.io.FileOutputStream.open(Native Method)處,位於 java.io.FileOutputStream。 (Unknown Source) java.io.FileOutputStream。 (未知源)... 7更多--------- java.io.FileNotFoundException: C:\ ProgramData。\ config \ .xml(訪問是 denied)java.io.FileOutputStream.open (本機方法) java.io.FileOutputStream。 (Unknown Source) java.io.FileOutputStream。 (Unknown Source) com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.getOutputHandler(Unknown Source)at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl。轉換(Unknown Source)at com..main.dr.a(Unknown Source)at com..main.dr.a(Unknown Source)at com..main.dr.a(Unknown Source)at com ..main.hk(未知來源)在 com..main.ay.run(未知來源)和原因 isjava.io.FileNotFoundException: C:\ ProgramData \ \ config \ .xml(訪問被拒絕的 )
我的應用程序是Java桌面應用程序。此應用程序自動運行第一次。無論何時用戶下次運行它,它都會拋出Access被拒絕,因爲程序無法訪問C:\ ProgramData中的配置文件。 –
那麼你是說1)它總是第一次成功運行,但2)它總是在第二次和以後失敗?這聽起來像「文件正在使用」錯誤。也許你沒有關閉所有的文件(在「最後」)?還有:看這裏:http://xml.apache.org/xalan-j/faq.html:「爲什麼我找不到'找不到'?」 – paulsm4
問題是「C:\ Program Data \ ..」中的相關文件權限。 –