2012-03-06 49 views
0

我有下面的代碼的問題。我想看看現有的目錄,看是否有文件創建一個新的前存在,但它似乎沒有創建一個新的文件,即使有目錄中沒有現有的。我附上了兩種相關的方法,但問題在於writeFile()方法。我試圖在writeFile中使用現有的'dir',這也沒有辦法。該程序的其餘部分似乎工作,只是writeFile方法有問題。文件目錄和文件創建問題

public void writeFile(String t) throws IOException { 
    File temp1 = new File(dateNow + File.separator + "Temperature.txt"); 
    boolean check = temp1.exists(); 
    if (!check) 
     newFiles(); 
} 

public void newFiles() { 
    SimpleDateFormat formatter = new SimpleDateFormat("dd-MM-yyyy"); 
    dateNow = formatter.format(now.getTime()); 
    System.out.println(dateNow); 
    // if (hour == 00 && mini == 00 && sec == 00) { 
    try { 
     dir = new File(dateNow); 
     boolean x = dir.mkdir(); 
     // .... 
    } catch (Exception e) { 
     // 
    } 
} 
+1

請在你的代碼發佈完整的代碼 – michael667 2012-03-06 12:02:25

+0

無處你創建一個文件。您請求創建一個子目錄*** ***在當前文件夾(你的一個程序執行中),但你沒有檢查該操作的布爾返回,看它是否成功與否。另外,你需要對你的例外做些事情,你不應該像現在的代碼一樣吞下它們。 – Perception 2012-03-06 12:09:48

回答

1

您需要指定完整路徑,而不僅僅是目錄和文件名來創建文件,甚至檢查它是否存在。 謝謝你michael667,你提醒我的相對位置是正確的,。 :) 和上面的代碼應該沒有問題。

+1

這不是事實。相對路徑相對於當前工作目錄。 – michael667 2012-03-06 12:10:15

+0

你如何檢查目錄而不是文件? – user1106130 2012-03-06 12:19:06

+0

它從桌面編譯但在文件夾中沒有工作時工作? – user1106130 2012-03-06 12:24:05