2016-05-10 83 views
0

我想從文件目錄加載圖像文件。然後,我想將文件對象轉換爲字符串對象。不幸的是,我不斷收到這個錯誤信息。我該如何解決它?爲什麼要繼續接收java.io.FileNotFoundException:(訪問被拒絕)錯誤?

java.io.FileNotFoundException: E:\workspace\sesaja\Images (Access is denied) 
at java.io.FileInputStream.open(Native Method) 
at java.io.FileInputStream.<init>(FileInputStream.java:120) 
at java.io.FileInputStream.<init>(FileInputStream.java:79) 
at test.Test1.main(Test1.java:29) 

氏是我的整個代碼

public class Test1 { 

    public static void main(String args[]){   

    String s = System.getProperty("user.dir") + System.getProperty("file.separator")+ "Images"; 
    File f = new File (s); 

    FileInputStream fis = null; 
    String str = ""; 

    try { 
      fis = new FileInputStream(f); 
      int content; 
      while ((content = fis.read()) != -1) { 
       // convert to char and display it 
       str += (char) content; 
      } 

      System.out.println("After reading file"); 
      System.out.println(str); 

     } catch (IOException e) { 
      e.printStackTrace(); 
     } finally { 
      try { 
       if (fis != null) 
        fis.close(); 
      } catch (IOException ex) { 
       ex.printStackTrace(); 
      } 
     }  
    }   

} 
+0

是E:\ workspace \ sesaja \映像文件或目錄? –

+0

@DavideLorenzoMARINO它是一個文件目錄 – Belle

+0

你想從目錄中讀取嗎?這是一個dir不是文件 –

回答

0

拼接所需的文件名在該行的末尾:

String s = System.getProperty("user.dir") + 
System.getProperty("file.separator")+ "Images" + fileName; 

看來你正試圖從文件讀取數據一個目錄,這在邏輯上不正確。
還建議不要使用FileInputStream來讀取字符(不是數據)。您可以改用BufferedReader
也可以讀取目錄中的文件名稱,您可以閱讀:Read all files in a folder

+0

文件名意味着我的文件映像名稱? 「圖像」是文件夾圖像的名稱,我試圖從該文件夾讀取所有圖像,不僅要讀取一個圖像。 你能告訴我如何使用Bufferedreader嗎? – Belle

+0

然後閱讀我在答案中提供鏈接的問題 –

相關問題