2017-08-11 55 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

相关问题