Java如何通過File類方法刪除指定文件夾中的全部文件
對delete的解說
那么問題來了!!!
(②中的問題,怎么刪除文件夾里所有文件,想必很多同學(xué)也和我一樣懵,)
別著急(往下看)
要用到的方法
(遞歸思想) 如果文件夾里面還有文件夾,就繼續(xù)往下找(可能不太官方,個(gè)人理解)
接下來 代碼展示方法一:
package com.study;import java.io.File;import java.io.IOException;/** 1. 應(yīng)用場景 2. delete刪除只能刪除空文件夾 和文件 3. 刪除指定文件夾 */public class Test1 { public static void main(String[] args) throws IOException { File f = new File('D://B'); deleteFile(f);//刪除完后并沒有刪除根目錄 f.delete();//刪除根目錄 if (!f.exists()){ //控制臺打印 System.out.println('刪除成功'); } } private static void deleteFile(File file) throws IOException { /** * File[] listFiles() * 返回一個(gè)抽象路徑名數(shù)組,這些路徑名表示此抽象路徑名表示的目錄中的文件。 */ File[] files = file.listFiles(); if (files!=null){//如果包含文件進(jìn)行刪除操作 for (int i = 0; i <files.length ; i++) {if (files[i].isFile()){ //刪除子文件 files[i].delete();}else if (files[i].isDirectory()){ //通過遞歸的方法找到子目錄的文件 deleteFile(files[i]);}files[i].delete();//刪除子目錄 } } }}
方法二: 和上面一樣,把上面if代碼塊里的替換即可
if (files!=null){//如果包含文件進(jìn)行刪除操作 for (File f:files) {//判斷遍歷出的文件是不是文件if (f.isFile()){ //如果是則直接刪除 f.delete();}else if (f.isDirectory()){//通過遞歸的方法找到文件夾里的文件 deleteFile(f);}f.delete();//刪除子目錄 } }思路
通過File類刪除文件夾全部內(nèi)容:
只有當(dāng)目錄中全部文件刪除掉之后才能刪除目錄通過遞歸方式進(jìn)入子目錄最后刪除根目錄
總結(jié)到此這篇關(guān)于Java如何通過File類方法刪除指定文件夾中的全部文件的文章就介紹到這了,更多相關(guān)Java File類方法刪除指定文件夾文件內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. 淺談XML Schema中的elementFormDefault屬性2. 選擇模式 - XSL教程 - 23. 前端從瀏覽器的渲染到性能優(yōu)化4. ASP中SELECT下拉菜單同時(shí)獲取VALUE和TEXT值的實(shí)現(xiàn)代碼5. 阿里前端開發(fā)中的規(guī)范要求6. 淺談由position屬性引申的css進(jìn)階討論7. 利用XMLSerializer將對象串行化到XML8. 三個(gè)不常見的 HTML5 實(shí)用新特性簡介9. 父div高度不能自適應(yīng)子div高度的解決方案10. CSS3實(shí)例分享之多重背景的實(shí)現(xiàn)(Multiple backgrounds)
