用于重命名文件并替换同一位置中的另一个文件的Java代码

时间:2016-11-02 05:41:48

标签: java file

我在file1.txt1的同一位置有两个文件file2.txtD:\Folder\。我在两个文件中都有不同的内容。现在,我想将file2.txt重命名为file1.txt并替换现有的file1.txt。这样,只剩下一个文件,名称为file1.txt,内容为file2.txt。我怎么能用Java做到这一点?

我尝试过以下操作,但第一个文件被删除,第二个文件不会被重命名。

File file1 = new File("D:\\Folder\\file1.txt");
File file2 = new File("D:\\Folder\\file2.txt");
file1.delete();
file2.renameTo(new File("D:\\Folder\\file1.txt"));

1 个答案:

答案 0 :(得分:0)

非常感谢你的帮助。请找到解决方案

import java.io.File;
import java.io.IOException;

public class TextFileRenaming {

public static void main(String[] args) throws IOException {

     //File directory
      File file = new File("C:/Folder/");

        // Reading directory contents
        File[] files = file.listFiles();
        String name = null;
        for(File f : files){

            // Getting file name and deleting 
            if(f.getName() != null && f.getName().equals("file1.txt")){
                 name = f.getName();
                f.delete();

                // Renaming the file
                file.listFiles()[0].renameTo(new File(file.getAbsolutePath() + "\\"+ name));
            }

        }
    }
}