繁体   English   中英

如何使用java.io包重命名文件?

[英]How to rename a file using java.io packages?

如何使用java.io包重命名文件?

File oldfile = new File(old_name);
File newfile = new File(new_name);
boolean Rename = oldfile.renameTo(newfile);

如果成功重命名旧文件,则布尔Rename将为true。

import java.io.File;
import java.io.IOException
    public class Rename {
      public static void main(String[] argv) throws IOException {

        // Construct the file object. Does NOT create a file on disk!
        File f = new File("Rename.java~"); // backup of this source file.

        // Rename the backup file to "junk.dat"
        // Renaming requires a File object for the target.
        f.renameTo(new File("junk.dat"));
      }
    }

参考: http//www.java2s.com/Code/Java/File-Input-Output/RenameafileinJava.htm

使用java.io.FilerenameTo方法。

FWIW,从Java 7及更高版本开始,对此的首选答案应该是使用java.nio.file.Files#move

java.nio.file.Files.move(oldPath, newPath, StandardCopyOption.ATOMIC_MOVE)

人们更喜欢这种方法的原因是因为java.io.File#renameTo中这种记录的行为java.io.File#renameTo

此方法行为的许多方面本质上依赖于平台:重命名操作可能无法将文件从一个文件系统移动到另一个文件系统,它可能不是原子的,如果具有目标抽象路径名的文件可能不会成功已经存在。 应始终检查返回值以确保重命名操作成功。

请注意,Files类定义了以独立于平台的方式移动或重命名文件的移动方法。

当使用java.nio.file.Files#move ,可以指定标准的CopyOption参数来指示更细微的行为(例如,如果文件已经存在,您是否希望发生什么,是否必须以原子方式完成等)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM