2017-05-21 84 views
1

我需要將文件從一個目錄替換到另一個目錄。我在網上搜索,我發現有效的解決方案來替換文件。我正在使用Files.walkFileTree遍歷目錄並替換文件。在替換文件之前,我檢查文件是否存在或不在目標目錄中。如果文件存在,我需要用相同的文件名替換新文件。但在我的情況下,我的來自源目錄的文件名將是相同的,只有文件格式會有所不同。FileVisitor替換現有文件

我使用

Files.copy(sourcefile,targetfile,REPLACE_EXISTING); 

上面的代碼替換文件到目標目錄僅當文件名和格式是相同的。否則,它不會刪除舊文件,而不是將新的舊文件放在目標目錄中。

Original Directory 
Source Folder    Target Folder 
a.pdf       a.txt 
b.pdf       b.txt 

After running Files.copy 
Source Folder     Target Folder 

a.pdf       a.txt 
b.pdf       b.txt 
           a.pdf 
           b.pdf 

But i need to replace Target Folder as 

Target folder 
(should replace .txt file and i need only .pdf files) 
a.pdf 
b.pdf 
+0

您能否用新的代碼更新您的問題? –

回答

0

你的問題是兩個文件名相同,你認爲是一個文件。在與擴展名不同的java文件中。 也許你在做時需要檢查相同的文件名。