Java利用File类中rename()移动文件


Java利用File类中rename()移动文件

package cn.com;
import java.io.File;
//问题描述: 移动文件
//注意:
//1 移动后原path下的文件夹将保留
//2 但文件夹下的文件将不会再存在
//3 若是目录则要递归调用该方法
//4 核心是调用File中renameTo()方法
public class FileTest {
 public static void main(String[] args) {
  FileTest fileTest=new FileTest();
  fileTest.moveFile("F:\\te6", "F:\\te7");
 }
 
 public void moveFile(String fromPath,String toPath){
  File fromFolder = new File(fromPath);
  File [] fromFiles=fromFolder.listFiles();
  if (fromFiles==null) {
   return;
  }
  File toFolder=new File(toPath);
  if (!toFolder.exists()) {
   toFolder.mkdirs();
  }
  for (int i = 0; i < fromFiles.length; i++) {
   File file = fromFiles[i];
   if (file.isDirectory()) {
    moveFile(file.getPath(),toPath+"\\"+file.getName());
    //亦可删除
    //file.delete();
   }
   if (file.isFile()) {
    File toFile=new File(toFolder+"\\"+file.getName());
    if (toFile.exists()) {
     //亦可删除
     //toFile.delete();
    }
      //移动文件
    file.renameTo(toFile);
   }
   
  }
 }

}

相关内容