2015-05-11 73 views
1

我想將文件名稱xxx.docx重命名爲xxx.docx.zip,然後在Java中將其重命名爲xxx.docx。如何在java中重命名文件

這是我的代碼。

File file = new File(path); 
File file2 = new File(path+".zip"); 
file.renameTo(file2); 
File file3 = new File(file.getPath()); 
file2.renameTo(file3); 

它不起作用。謝謝。

編輯:問題是我忘記在重命名它之前關閉文檔。

+1

**爲什麼**你想這樣做?它有什麼用途? –

+3

'File.renameTo()'返回一個布爾值,並且不檢查結果。改用java.nio.files('Files.move()') – fge

+1

你可能沒有這樣做;你很可能會用其間的文件做其他事情。更詳細地解釋你的代碼在做什麼。請注意,如果某個進程打開了該文件,則重命名可能不起作用。 – Jesper

回答

2

這樣的代碼有效。最可能的是其他一些進程已經鎖定了文件並且只能讀取它。你已經打開它(因爲它是docx文件)或類似的東西。也許它是在一個只讀的位置。

代碼工作正常。嘗試不同的文件,你會看到它是好的(我試過了)。