天天看點

從鍵盤接收一個檔案夾路徑,删除該檔案夾

package com.whh.test;

import java.io.File;
import java.util.Scanner;

public class test6 {

	/**
	 * @param args
	 * 從鍵盤接收一個檔案夾路徑,删除該檔案夾
	 * 	分析
	 * 		檔案夾删除要把裡面的所有檔案都删除才可以删除;
	 * 		1.獲得檔案路徑		getFiles
	 * 		2.判斷是否檔案,
	 * 			是,删除
	 * 			不是,進入檔案夾遞歸;
	 * 注意:
	 * 		java删除不走資源回收筒;
	 */
	public static void main(String[] args) {
		File file = getFiles();			//擷取檔案夾路徑
		DeletFiles(file);				//删除檔案夾内的所有檔案
		file.delete();					//删除檔案夾本身
	}

	private static void DeletFiles(File file) {
		//擷取檔案數組
		File[] filearr = file.listFiles();
		//周遊檔案數組
		for(File f : filearr) {
			//是,檔案删除
			if(f.isFile()){
				f.delete();
			//是檔案夾遞歸
			}else if(f.isDirectory()) {
				DeletFiles(f);	
			}
			//删除檔案夾;
			f.delete();
		}
	}

	private static File getFiles() {
		while(true){
			Scanner sc = new Scanner(System.in);
			System.out.println("請輸入要删除的檔案夾路徑");
			String dir = sc.nextLine();
			File file = new File(dir);
			if(file.isDirectory()){
				return file;
			}else{
				System.out.println("輸入的不是檔案夾路徑或檔案夾不存在");
			}
					
		}		
	}

}