2011-10-07 75 views
0

使用java如何將文件從一個目錄移動到另一個目錄?我應該只使用streamReader將字節複製到目標目錄然後刪除原始文件?Java:在目錄之間複製文件

+0

檢查此鏈接(http://www.roseindia.net/java/example/java/io/MovingFile.shtml) – raym0nd

回答

2

嘗試File.renameTo操作。儘管它的名字,它也可能被用來移動文件。但是,請注意,正如文檔所述,其行爲將取決於您所運行的平臺。

例子:

File oldFile = ...; 
File newDirectory = ...; 
String newName = ...; 
File newFile = new File(newDirectory, newName); 

oldName.renameTo(newFile); 
+0

非常感謝! –

0

我建議你使用FileUtils類從org.apache.common。文檔here

2

這聽起來是錯誤的。如果你真的移動文件(而不是複製),那麼你應該使用某種更便宜的重命名方法。 (File.renameTo())似乎是推薦的方法)。

[編輯]大多數操作系統(甚至可能是全部)的移動操作比完整複製和刪除便宜得多。這相當於在一個目錄中刪除文件的條目並將其添加到不同的目錄(或在同一目錄中的不同名稱下)。無需觸摸文件中的實際數據進行此操作。

0

你可以做一個文件renameTo並給它作爲參數的文件的新位置。

See Here

0

首先嚐試File.renameTo()要做一個真正的舉動。如果失敗,請進行真正的複製/刪除。除此之外:InputStreamOutputStream是執行復制的最基本方式。但如果你不想重新發明輪子,你可以使用FileUtis來完成我所描述的內容。