2013-04-05 133 views
0

我正在測試我寫的一個方法是拋出一個文件異常。我通過對文件的讀取權限設置爲falsesetReadable(true)在setReadable(false)後不起作用

 File f = new File(unreadableFile); 
    f.setReadable(false); 
    // Run test 
    f.setReadable(true); 

問題觸發例外是f.setReadable(真)不設置權限迴應該是什麼。我有另一個測試正常操作模式的測試,它總是失敗,因爲f.setReadable(true)沒有將文件恢復到異常測試運行之前的狀態。我檢查了磁盤上的權限,這是錯誤的。

+0

調試步驟1:您是否曾嘗試以root/administrator身份運行該程序? – Zyerah 2013-04-05 04:23:44

+0

當且僅當操作成功時,從JavaDocs * true中檢查返回值。如果用戶沒有權限更改此抽象路徑名的訪問權限,則操作將失敗。如果可讀性錯誤且基礎文件系統未實現讀取權限,則操作將失敗。* – MadProgrammer 2013-04-05 04:31:51

回答

0

引述文檔

返回true當且僅當操作成功。如果用戶沒有權限更改此抽象路徑名的訪問權限,則操作將失敗。如果可讀性錯誤且基礎文件系統未實現讀取權限,則操作將失敗。

檢查返回值並檢查您是否有權執行操作。該操作非常像delete(),如果您沒有權限,可能會失敗。

相關問題