package cn.itcast.flow;
import java.io.File;
/**
* @author 王金龍
* @date 創建時間: 2017-2-17 下午7:52:50
* @version 1.0
*/
public class Recursion {
public static void main(String[] args) {
// TODO Auto-generated method stub
//給定對應的源目錄和目標目錄
File sourceDir=new File("F:\\java電子書");
File targetFile=new File("E:\\BaiduYunDownload\\");
cutFile(sourceDir,targetFile);
}
//移動一個非空的目錄到另一個地方(剪切)
public static void cutFile(File sourceDir,File targetFile ){
if(!sourceDir.exists()||!targetFile.exists()){
System.out.println("源目錄或者目標目錄不存在!!!請檢查!!!");
return;
}
if(!sourceDir.isDirectory()||!targetFile.isDirectory()){
System.out.println("源目錄或者目標目錄不是指定的目錄!!!請檢查!!");
return;
}
//獲取源文件夾名字
String s=sourceDir.getName();
//在指定路徑下創建一個File文件並且創建對應源文件
File cfile= new File(targetFile,s);
cfile.mkdir();
//遍歷源目錄
File[] files = sourceDir.listFiles();
for(File file : files){
if(file.isFile()){
//調用File類的renameTo方法實現剪切
file.renameTo(new File(cfile,file.getName()));
}else if(file.isDirectory()){
//運用遞歸實現
cutFile(file,new File(cfile,File.separator));
}
}
//刪除源文件
sourceDir.delete();
}
}