2012-05-01 30 views
0

我有一個使用Java 6的Windows 7 64位運行的程序,使用Java 7時失敗。ImageIO在讀寫時似乎會生成臨時緩存文件。在我的Eclipse IDE中,ImageIO現在掛起而沒有錯誤消息。在另一臺機器上,我得到一個IOException權限被拒絕。Java 7由於權限問題,ImageIO在Windows 7中可能無法讀取和寫入

我採用的解決方法是使用Toolkit.createImage讀取圖像並將其轉換爲BufferedImage。這似乎不需要創建任何文件,但是笨重。我現在正在通過轉換爲一個字節數組寫入。

是否有其他人有這些問題?

+0

那麼,你檢查了你要寫入的文件或文件夾不是隻讀嗎? – MarioDS

+0

*「問候」* [SO不是社交網絡](http://meta.stackexchange.com/a/128552/155831),請不要在問題中包含此類噪音。 *「克里斯」*最好作爲編輯[你的個人資料](http://stackoverflow.com/users/1368075/user1368075)。 –

回答

1

我對這些緩存文件有一個性能問題,並通過調用javax.imageio.ImageIO.setUseCache(false)來解決它。只要原始圖像文件已經在磁盤上,就不會有性能損失。