2017-08-11 38 views
1

我有代碼,可以在我的電腦中創建d盤文件中可以寫在這個file.Here一些信息源也不會在Java中創建特定的目錄文件(系統找不到指定的路徑)

File file = new File("D:\\" + filename); 
FileWriter writer = new FileWriter(file, true); 
writer.write(builder.toString()); 
writer.close(); 
System.out.println("done!"); 
statusText.setText("Information successfully saved!"); 
statusText.setForeground(Color.BLACK); 

此代碼工作正確的,但是當我試圖改變文件目錄這樣的,我有例外

File file = new File("D:\\testFolder\\" + filename); 

這裏是一個例外

IOException: D:\testFolder\2017-08-11.csv (The system cannot find the path specified) 

我在做什麼錯或我如何解決我的問題?

+2

但....你有***「testFolder」*** ??? ??? –

+0

不,我沒有。我想檢查一下是否存在@ΦXocę웃Петоо – Beka

+0

如何創建一個目錄是一個不同的問題。請參閱https://stackoverflow.com/questions/3024002/how-to-create-a-folder-in-java – robjwilkins

回答

-1

先嚐試創建目錄:

  String filename = "myfile"; 
      File file= null; 

//   Check if directory exists 
      File directory = new File("D:\\testFolder\\"); 
      if (directory.exists() && directory.isDirectory()) { 
       //create your file 
       file = new File(directory +"\\"+ filename); 
      } else { 
       // Create directory 
       directory = new File("C:\\testFolder\\"); 

       if(directory.mkdir()) { 
        System.out.println("Directory Created"); 
        file = new File(directory +"\\"+ filename); 

       } else { 
        System.out.println("Directory is not created"); 
       } 

       // Create file 
      } 

      FileWriter writer = null; 
      try { 
       writer = new FileWriter(file, true); 
       writer.write(builder.toString()); 
       writer.close(); 
       System.out.println("done!"); 
       statusText.setText("Information successfully saved!"); 
       statusText.setForeground(Color.BLACK); 
      } catch (IOException e) { 
       e.printStackTrace(); 
      } 
+0

感謝您的關注。如果存在,我可以在此File目錄中創建一些文件? @mohit sharma – Beka

+0

@Beka現在檢查, –

+0

我試過了,但我的測試文件夾是空的@ mohit sharma – Beka

1

你不能這樣做,如果該文件夾犯規存在...... 你只會得到一個java.io.FileNotFoundException

創建文件夾firts

File dir = new File("C:\\" + "__folder"); 
dir.mkdir(); 

dir.mkdirs(); 

取決於父/子文件夾的深度

+0

謝謝,但我知道如何檢查文件是否存在。但我會這樣檢查。如果目錄存在(例如D:testfolder)在該目錄內創建一些文件,否則創建新文件夾,然後創建新文件@ΦXocę웃Петツ – Beka

相關問題