2016-08-25 42 views
1

我想在這個字符串名稱爲organization.id的下面的路徑/var/www/downloads/中創建一個目錄,但我得到一個false作爲輸出。在java中的現有路徑中創建一個目錄?

File filePath = new java.io.File("/var/www/downloads/" + organization.id).mkdir(); 
    String test = filePath.toString(); 
    println("--> Path " + test); 
+0

http://java7fs.wikia.com/wiki/Why_File_sucks。開始使用Java 7中添加的utils,它允許您知道究竟是什麼導致了問題,而不是返回'boolean'。 – Pshemo

+0

另外你的例子不能編譯,因爲'mkdir()'返回'boolean',但你將它存儲在'File'中。另一個令人困惑的部分是:爲什麼你的代碼中有'java.io.File'?你已經有了'File filePath',所以它看起來像你在導入時添加了'java.io.File'或'java.io. *'。 'filePath'的File類型不是來自'java.io'包嗎? – Pshemo

回答

3

,最好使用java.nio.file.Pathsjava.nio.file.Files

Path path = Paths.get("/var/www/downloads/" + organization.id); 
if (!Files.exists(path)) { // check if directory exists 
    try { 
     Files.createDirectories(path); 
     System.out.println("Directory created SUCCESSFULLY."); 
    } catch (IOException e) { // failed to create 
     System.out.println("Directory creation FAILED."); 
     e.printStackTrace(); 
    } 
} 
1

的mkdir()返回boolean值。 因此將new java.io.File("/var/www/downloads/" + organization.id).mkdir(); 設置爲布爾值並打印出來進行檢查。

相關問題