2015-03-03 64 views
1
Path to = Paths.get("C:\\submissions\\SOFT222\\Assessment1\\10403435\\Submission15\\OO Java Bootcamp - Java and NetBeans - Copy\\test\\oojavabootcamp\\OOJavaBootcampTestMasase - Copy"); 
Path from = Paths.get("C:\\submissions\\SOFT222\\Assessment1\\OOJavaBootcampTest - Copy"); 

void Paths() throws IOException { 

    File submissionFolder = new File("C:\\submissions\\SOFT222\\Assessment1\\10403435\\Submission15\\OO Java Bootcamp - Java and NetBeans - Copy"); 

    if (submissionFolder.exists()) { 
     System.out.println("Folder exists"); 
     try { 
      // Remove test files 
      Files.deleteIfExists(Paths.get(to + ".java")); 
      Files.copy(Paths.get(from + ".java"), Paths.get(to + ".java")); 
     } catch (IOException ex) { 
      System.out.println("Original file copy did not work."); 
     } 
    } 
} 

此代碼刪除java文件,但似乎並沒有在java文件複製(OOJavaBootcampTest - 複製)到「到」 COS名稱變量保持刪除後相同已經發生了。我認爲它刪除它並製作它的副本,而不是用變量中的.java替換它。請問我在做什麼錯誤刪除文件與Java文件

+2

爲什麼不直接使用「Path」作爲基礎文件夾?請注意,有'Files.isDirectory()' – fge 2015-03-03 11:29:33

+0

其實它正在爲我工​​作,請確保您在該位置有文件。 – Batty 2015-03-03 11:37:18

+0

我仔細看過,路徑似乎沒問題。我的if語句顯示submissionFolder存在,但不能找到java文件 – Buzz 2015-03-03 11:48:04

回答

0

你不告訴什麼路徑是哪個引發錯誤,所以很難說。

注意,您可以:

Files.deleteIfExists(somePath); 

,所以你可能要改用這一點。


很難告訴你真正想要所以在這裏我就假設你要覆蓋tofrom;在這種情況下,請執行以下操作:

final Path parentDir = to.getParent(); 

Files.createDirectories(parentDir); 
Files.copy(from, to, StandardCopyOption.REPLACE_EXISTING); 
+0

我已經嘗試過,但不起作用。導致錯誤的路徑是'to'變量 – Buzz 2015-03-03 11:33:44

+0

但是什麼路徑_exactly_?事實上,它甚至不清楚你想要做的第一件事 – fge 2015-03-03 11:42:14

+0

我想刪除'to'變量中的java文件 – Buzz 2015-03-03 11:46:24