2017-09-27 157 views
0

我想在java中簡單地閱讀文本文檔。該文件正在我的程序中找到;我可以看到它能夠通過各種測試確定正確的絕對路徑,但問題似乎是我的程序沒有查看文件的權限?爲什麼我的文件不能用java讀取?

File names = new File("names.txt"); 
if(names.setReadable(true, false (edit: true))) 
    System.out.println("Can now be read"); 
if(names.canRead()) 
    System.out.println("Can be read"); 

FileInputStream fs = new FileInputStream(names); 
BufferedReader br = new BufferedReader(new InputStreamReader(fs)); 

每個if語句中的布爾表達式計算結果爲false,我不明白爲什麼,或者如何改變它。我碰到一個FileNotFoundException,我試圖創建一個新的FileInputStream,我讀的是由於該文件不可讀。

編輯:現在我已經將setReadable方法調用的第二參數更改爲true,並且該部分工作(它打印「現在可以讀取」);所以似乎該文件被發現並設置爲可讀,但仍然是第二個如果語句失敗,程序無法訪問文本文檔。

+0

如果您的異常是FileNotFoundException,那麼您錯誤地指出了文件的位置。 File file = new File(「C:\\ filePath \\ yourfile.txt」); – Myo

回答

0

這應該是:

if(names.setReadable(true, true)) 

第二個參數應該是true讓主人可以訪問該文件。

如果將其設置爲false,程序將無法讀取文件。

欲瞭解更多信息,請閱讀here

相關問題