JAVA 는 디스크 의 모든 빈 폴 더 를 삭제 하 는 코드 를 구현 합 니 다.
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){
// ,
f1.delete();
}
}
}
}
/**
*
*
*/
public static void main(String[] args) {
File f = new File("F:\\360CloudUI\\");
new DelNullDir().ShowDir(f);
}
}
구현 코드 2,
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 , , )
* */
public class DelEmptyFolders {
//
private static StringBuffer paths;
//
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);
// 0 , ;
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(" , :"+(end-start)/1000+" , :"+cnt+" !
");
}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
").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 가 빈 폴 더 를 삭제 하 는 실현 코드 입 니 다.필요 하신 분 은 참고 하 시기 바 랍 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
JAVA 객체 작성 및 제거 방법정적 공장 방법 정적 공장 방법의 장점 를 반환할 수 있습니다. 정적 공장 방법의 단점 류 공유되거나 보호된 구조기를 포함하지 않으면 이불류화할 수 없음 여러 개의 구조기 파라미터를 만났을 때 구축기를 고려해야 한다...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.