관리 메뉴

피터의 개발이야기

[Kotlin] kotlin 폴더 전체 삭제 방법 본문

Programming/Kotlin

[Kotlin] kotlin 폴더 전체 삭제 방법

기록하는 백앤드개발자 2024. 7. 13. 10:10
반응형

ㅁ 들어가며

ㅇ 폴더를 삭제하는 Kotlin 코드를 정리하였다.

ㅇ file.delete() 함수는 하위에 파일이나 폴더가 존재하면 삭제가 되지 않는다.

ㅇ 그래서 이 코드는 지정된 폴더와 그 하위의 폴더와 삭제를 재귀적으로 삭제한다.

 

ㅁ 폴더 삭제 코드

import java.io.File

fun main() {
    val folderPath = "path/to/folder" // 삭제하려는 폴더 경로
    val folder = File(folderPath)
    
    if (deleteFolder(folder)) {
        println("폴더가 성공적으로 삭제되었습니다: $folderPath")
    } else {
        println("폴더 삭제에 실패했습니다: $folderPath")
    }
}

fun deleteFolder(folder: File): Boolean {
    if (!folder.exists()) 
        return false
    
    folder.listFiles().let { files ->
        files.forEach {file ->
            if (file.isDirectory)
                deleteFolder(file)
            else
                file.delete()
        }
    }
    return folder.delete()
}

 

ㅇ deleteFolder 함수는 주어진 File객체의 폴더 내의 모든 파일과 하위 폴더를 순회하면서 재귀적으로 삭제한다. 

ㅇ 마지막에는 자기 자신인 폴더 자체를 삭제하고 성공여부를 반환한다.

ㅇ 소스는 여기

반응형
Comments