[swift] Swift에서 특정 확장자를 가진 모든 파일 삭제 방법

많은 경우에 파일을 다루는 프로그램을 작성할 때, 특정 확장자를 가진 파일들을 삭제해야 하는 필요가 있습니다. Swift 언어에서는 FileManager 클래스를 사용하여 파일 시스템을 다룰 수 있으며, 해당 클래스를 이용하여 특정 확장자를 가진 모든 파일을 삭제할 수 있습니다.

1. FileManager를 이용하여 파일 목록 가져오기

우선 FileManager 클래스를 사용하여 특정 디렉토리의 파일 목록을 가져옵니다. 아래의 코드는 특정 디렉토리 내의 모든 파일의 URL을 가져오는 예제입니다.

let fileManager = FileManager.default
let directoryURL = URL(fileURLWithPath: "/path/to/directory")

do {
    let fileURLs = try fileManager.contentsOfDirectory(at: directoryURL, includingPropertiesForKeys: nil)
    // 파일 목록 가져오기 성공
} catch {
    // 파일 목록 가져오기 실패
}

2. 특정 확장자를 가진 파일 삭제

파일 목록을 가져온 후에는 해당 파일들 중에서 특정 확장자를 가진 파일을 식별하여 삭제할 수 있습니다. 아래의 코드는 특정 확장자를 가진 파일을 삭제하는 예제입니다.

let fileManager = FileManager.default
let directoryURL = URL(fileURLWithPath: "/path/to/directory")
let fileExtension = "txt"

do {
    let fileURLs = try fileManager.contentsOfDirectory(at: directoryURL, includingPropertiesForKeys: nil)
    for fileURL in fileURLs {
        if fileURL.pathExtension == fileExtension {
            try fileManager.removeItem(at: fileURL)
            // 특정 확장자를 가진 파일 삭제 성공
        }
    }
} catch {
    // 파일 삭제 실패
}

3. 주의사항

파일을 삭제하기 전에 해당 파일이 실제로 필요한지, 그리고 삭제해도 안전한지를 반드시 확인해야 합니다. 또한, FileManager를 이용하여 파일 시스템을 조작할 때에는 권한 및 보안에 유의해야 합니다.

위의 예제 코드를 참고하여, Swift에서 특정 확장자를 가진 모든 파일을 삭제하는 방법을 익혀보세요.

참고 자료