JAVA實(shí)現(xiàn)將磁盤中所有空文件夾進(jìn)行刪除的代碼
更新時(shí)間:2017年06月18日 14:59:06 投稿:mdxy-dxy
這篇文章主要介紹了JAVA實(shí)現(xiàn)將磁盤中所有空文件夾進(jìn)行刪除的代碼,需要的朋友可以參考下
實(shí)現(xiàn)代碼一、
import java.io.File;
import java.io.*;
public class DelNullDir {
public void ShowDir(File f){
for (File f1:f.listFiles()){
if(f1.isDirectory()){
ShowDir(f1);
//一直遞歸到最后的目錄
if(f1.listFiles().length==0){
//如果是文件夾里面沒有文件證明是空文件,進(jìn)行刪除
f1.delete();
}
}
}
}
/**
*
* 把磁盤中所有空的文件夾進(jìn)行刪除
*/
public static void main(String[] args) {
File f = new File("F:\\360CloudUI\\");
new DelNullDir().ShowDir(f);
}
}
實(shí)現(xiàn)代碼二、
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.util.Date;
/**
* Description:遞歸方式,掃描并刪除磁盤中的空文件夾
*(C盤中的一些空文件夾是系統(tǒng)文件夾,刪除多次后空文件夾數(shù)量不變,則停止此程序)
* */
public class DelEmptyFolders {
//空文件夾的絕對路徑
private static StringBuffer paths;
//本次掃描的空文件夾的數(shù)量
private static int cnt;
public static void main(String[] args) {
boolean flag = true;
do{
cnt = 0;
paths = new StringBuffer();
long start = new Date().getTime();
System.out.println("正在掃描......");
//要掃描的磁盤
File disk = new File("C:/");
//日志文件的位置
File log = new File("D:/scanLog_C.txt");
try {
//掃描磁盤
scanEmptyFolders(disk);
//空文件夾數(shù)大于0時(shí),將文件夾的絕對路徑記錄到日志中并再掃描一次;否則停止掃描
if(cnt > 0){
fileWrite(paths.toString(), log);
}else{
flag = false;
}
} catch (FileNotFoundException e1) {
e1.printStackTrace();
} catch (IOException e2) {
e2.printStackTrace();
}
long end = new Date().getTime();
System.out.println("本次掃描完畢,耗時(shí):"+(end-start)/1000+" 秒,共刪除:"+cnt+" 個(gè)空文件夾!\n");
}while(flag);
}
/**
* TODO:遞歸掃描空文件夾
* @throws UnsupportedEncodingException
* */
private static void scanEmptyFolders(File file) throws UnsupportedEncodingException{
if(file != null && file.isDirectory()){
File[] files = file.listFiles();
//非空文件夾
if(files != null){
if(files.length > 0){
for (File temp : files) {
scanEmptyFolders(temp);
}
}else{
System.out.println(file.getAbsolutePath());
//記錄日志
paths.append(new String((file.getAbsolutePath()+"\r\n").getBytes(),"UTF-8"));
cnt++;
//刪除空文件夾
file.delete();
}
}
}
}
/**
* TODO:將字符串寫入文本文件
* @throws IOException
* */
private static void fileWrite(String info,File file) throws IOException{
FileOutputStream fos = new FileOutputStream(file);
BufferedOutputStream bos = new BufferedOutputStream(fos);
bos.write(info.getBytes());
bos.flush();
bos.close();
fos.close();
}
}
以上就是JAVA刪除空文件夾的實(shí)現(xiàn)代碼,需要的朋友可以參考一下。
您可能感興趣的文章:
- java刪除文件和文件夾具體實(shí)現(xiàn)
- java刪除文件夾下所有文件示例分享
- Java實(shí)現(xiàn)ftp上傳下載、刪除文件及在ftp服務(wù)器上傳文件夾的方法
- java實(shí)現(xiàn)讀取、刪除文件夾下的文件
- java刪除指定目錄下所有空文件夾的方法
- java 刪除文件夾中的所有內(nèi)容而不刪除文件夾本身的實(shí)例
- Java刪除指定文件夾下的所有內(nèi)容的方法(包括此文件夾)
- Java實(shí)現(xiàn)的模糊匹配某文件夾下的文件并刪除功能示例
- Java如何通過File類方法刪除指定文件夾中的全部文件
- Java實(shí)現(xiàn)文件夾中內(nèi)容定時(shí)刪除
相關(guān)文章
解決idea使用過程中讓你覺得不爽的一些問題(小結(jié))
這篇文章主要介紹了解決idea使用過程中讓你覺得不爽的一些問題,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-08-08
Java中==與equals()及hashcode()三者之間的關(guān)系詳解
最近也是在讀Hollis的《深入理解Java核心技術(shù)》里面一節(jié)講到了equals()和hashcode()的關(guān)系,對于這個(gè)高頻面試點(diǎn),咱們需要認(rèn)真理清一下幾者之間的關(guān)系2022-10-10
Java Lambda List轉(zhuǎn)Map代碼實(shí)例
這篇文章主要介紹了Java Lambda List轉(zhuǎn)Map代碼實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-03-03
Spring?boot?Jpa添加對象字段使用數(shù)據(jù)庫默認(rèn)值操作
這篇文章主要介紹了Spring?boot?Jpa添加對象字段使用數(shù)據(jù)庫默認(rèn)值操作,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-11-11
springboot攔截器無法注入redisTemplate的解決方法
在工作中我們經(jīng)常需要做登錄攔截驗(yàn)證或者其他攔截認(rèn)證功能,但是在寫攔截器的時(shí)候發(fā)現(xiàn)redisTemplate一直無法注入進(jìn)來,本文就詳細(xì)的介紹了解決方法,感興趣的可以了解一下2021-06-06
Java并發(fā)之synchronized實(shí)現(xiàn)原理深入理解
這篇文章主要介紹了Java中synchronized實(shí)現(xiàn)原理詳解,涉及synchronized實(shí)現(xiàn)同步的基礎(chǔ),Java對象頭,Monitor,Mark Word,鎖優(yōu)化,自旋鎖等相關(guān)內(nèi)容,具有一定借鑒價(jià)值,需要的朋友可以參考下2021-08-08
java實(shí)現(xiàn)切割wav音頻文件的方法詳解【附外部jar包下載】
這篇文章主要介紹了java實(shí)現(xiàn)切割wav音頻文件的方法,結(jié)合實(shí)例形式詳細(xì)分析了java切割wav音頻文件的相關(guān)原理、操作技巧與注意事項(xiàng),并附帶外部jar包供讀者下載,需要的朋友可以參考下2019-05-05

