文件移动renameTo()与move()

1、renameTo:返回值是true或false,移动不成功也不会提示报了什么错,所以不建议使用它。

import java.io.File;

File oldfile = new File(oldPath);
//判断新路径是否存在
if(newPath != null){
  File dirctoryFile = new File(newPath);
  if(!dirctoryFile.exists()){
    //创建文件夹
    dirctoryFile.mkdirs();
  } 
  //移动文件
  Boolean flg = oldfile.renameTo(new File(newPath, oldfile.getName()));
  if (flg){
    system.out.println("移动成功");
  }
}

2、move:移动不成功是会抛异常说明是什么错,个人推荐使用这种。

import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;

File oldfile = new File(oldFullPath);
//判断新路径是否存在
if(newPath != null){
  File dirctoryFile = new File(newPath);
  if(!dirctoryFile.exists()){
    //创建文件夹
    dirctoryFile.mkdirs();
  } 
  //移动文件
  try{
    Files.move(Paths.get(oldFullPath), Paths.get(newPath + "\\"+ oldfile.getName()),StandardCopyOption.ATOMIC_MOVE);
    system.out.println("移动成功");
  }catch(IOException e){
    system.out.println("移动失败");
    e.printStackTrace();
  }
}

你可能感兴趣的:(java,file)