DEV&OPS/Java
JAVA 특정 폴더와 하위 폴더 및 하위 파일들을 모두 삭제
ALEPH.GEM
2024. 1. 3. 20:56
이번에는 재귀 호출을 이용하여 특정 폴더의 내용을 모두 삭제하는 예제를 구현해봤습니다.
import java.io.File;
public class DeleteDirectoryExample {
public static void main(String[] args) {
String directoryPath = "C:/Temp"; // 윈도우 실행 기준
File directory = new File(directoryPath);
// 디렉토리가 존재하면 삭제 수행
if (directory.exists()) {
deleteDirectory(directory);
System.out.println("디렉토리 및 하위 경로가 삭제되었습니다.");
} else {
System.out.println("디렉토리가 존재하지 않습니다.");
}
}
// 디렉토리 및 하위 경로를 삭제하는 메서드
private static void deleteDirectory(File dir) {
File[] files = dir.listFiles();
if (files != null) {
for (File file : files) {
if (file.isDirectory()) {
// 재귀호출을 이용한 반복 디렉토리 삭제
deleteDirectory(file);
} else {
// 파일 삭제
file.delete();
}
}
}
// 디렉토리 삭제
dir.delete();
}
}
deleteDirectory() 메서드는 주어진 디렉토리 내의 모든 파일 및 하위 디렉토리를 재귀적으로 호출해서 삭제합니다.
listFiles() 메서드를 사용해서 디렉토리 내의 파일 및 디렉토리(파일 취급) 목록을 얻어서 각각 for문 루프를 돌면서 삭제합니다.
728x90