java IO流實現刪除文件夾以及文件夾中的內容


這篇主要是對IO文件流對文件常用處理中的刪除文件夾,平時我們直接刪除文件夾既可以刪除里面的全部內容。

但是java在實現刪除時,只能是文件才會被刪除。

所以這里需要定義一個方法,來遞歸調用方法(遞歸調用,就是在方法的內部調用自己),實現文件夾里面的全部文件刪除

注意:做這個測試的時候,一定要備份,如果刪除成功就不會回復了

package com.teacher;

import java.io.File;

public class DeleteFile {

	public static void main(String[] args) {
		new DeleteFile().deleteFiles(new File("e:/io"));
	}
	/*
	 * 刪除整個文件夾:
	 * 
	 * 當為目錄時,遞歸調用刪除子文件
	 *                      最后刪除自己
	 * 當為文件執行最后一行,直接刪除,
	 */
	
	public void deleteFiles(File file){
		if (file.isDirectory()) {
			File[] files=file.listFiles();
			for (int i = 0; i < files.length; i++) {
				if (files[i].isDirectory()) {
					deleteFiles(files[i]);
				}else {
					System.out.println("里層文件:"+files[i].getName()+"--------"+files[i].delete()); 
				}
			}			
		}
		System.out.println("外層文件:"+file.getName()+"--------"+file.delete()); 
	}
}

  

結果如下:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM