2015-04-06 193 views
0

我想在已經存在的文件夾中創建新文件夾,現有文件夾由應用程序在開始時給出,默認情況下我將其命名爲'文件管理器',並將直接存儲在C:\根(例如:C:\ File Manager)。首先,我創建一個允許用戶通過命名新的文件夾代碼:在已經存在的文件夾中創建文件夾

 System.out.println("Enter name of folder you like to create: "); 
     Scanner userFolderInput = new Scanner(System.in); 
     String nameFolder = userFolderInput.nextLine(); 
     File makeDirectory = new File(nameFolder); 

然後我檢查,如果文件夾的用戶給了名已經存在,並試圖通過創建它:

 try{ 
      if(!makeDirectory.exists()){ 
       makeDirectory.mkdir(); 
       System.out.println("You have create folder by name: " + makeDirectory.getName()); 
      }else{ 
       System.out.println("Folder by name " + makeDirectory.getName() + " already exist!"); 
      } 
     }catch(Exception ex){ 
      System.out.println("Error - Folder coudnt be created!"); 
     } 

但這只是在項目文件夾中創建由用戶輸入的新文件夾,但不在應用程序啓動時創建的文件夾中。我可否知道如何修改我的代碼,以便在用戶創建新文件夾時進入在應用程序啓動時創建的文件管理器文件夾中?

回答

0
File containingFolder = new File("C:/File Manager"); 
File makeDirectory = new File(containingFolder, nameFolder); 
+0

謝謝你現在正在工作的答案 – Denis 2015-04-06 08:33:17

0

如果不指定路徑,它將自動在項目目錄中創建它。因此,當用戶輸入文件夾的名稱時,您需要添加它需要創建的路徑。

 File makeDirectory = new File("C:\\"+nameFolder); 

OR

File makeDirectory = new File(fileManager, nameFolder); 
+0

感謝您的快速響應。當我嘗試所有它創建新文件夾直接到C:\\根目錄,如果我添加默認文件夾的名稱作爲FILE makeDirectory =新文件(「C:\\文件管理器」,+ nameFolder);它會在C:\根名稱'文件管理器新文件夾名稱'上創建新文件夾,但不會將其放在我想要的文件夾上。 – Denis 2015-04-06 08:23:52

+0

嘗試第二行代碼。 – 2015-04-06 08:28:53

+0

感謝它現在正在工作的答案 – Denis 2015-04-06 08:33:28

相關問題