Rename a file using Java

前端 未结 14 1016
感情败类
感情败类 2020-11-22 07:54

Can we rename a file say test.txt to test1.txt ?

If test1.txt exists will it rename ?

How do I rename it to the alrea

14条回答
  •  滥情空心
    2020-11-22 08:02

    Yes, you can use File.renameTo(). But remember to have the correct path while renaming it to a new file.

    import java.util.Arrays;
    import java.util.List;
    
    public class FileRenameUtility {
    public static void main(String[] a) {
        System.out.println("FileRenameUtility");
        FileRenameUtility renameUtility = new FileRenameUtility();
        renameUtility.fileRename("c:/Temp");
    }
    
    private void fileRename(String folder){
        File file = new File(folder);
        System.out.println("Reading this "+file.toString());
        if(file.isDirectory()){
            File[] files = file.listFiles();
            List filelist = Arrays.asList(files);
            filelist.forEach(f->{
               if(!f.isDirectory() && f.getName().startsWith("Old")){
                   System.out.println(f.getAbsolutePath());
                   String newName = f.getAbsolutePath().replace("Old","New");
                   boolean isRenamed = f.renameTo(new File(newName));
                   if(isRenamed)
                       System.out.println(String.format("Renamed this file %s to  %s",f.getName(),newName));
                   else
                       System.out.println(String.format("%s file is not renamed to %s",f.getName(),newName));
               }
            });
    
        }
    }
    

    }

提交回复
热议问题