[swift] Swift에서 생성된 디렉토리에 다른 디렉토리 및 파일 이동하기
먼저 FileManager의 createDirectory(atPath:withIntermediateDirectories:attributes:)
메서드를 사용하여 새 디렉토리를 생성합니다. 이 메서드는 새 디렉토리 경로를 전달하여 디렉토리를 생성합니다. 중간에 있는 디렉토리들도 모두 생성하도록 하려면 withIntermediateDirectories
파라미터를 true
로 설정합니다. 여기에 속성을 추가할 수도 있지만, 여기서는 생략하도록 하겠습니다.
새 디렉토리를 생성한 후에는 moveItem(atPath:toPath:)
메서드를 사용하여 파일을 해당 디렉토리로 이동시킬 수 있습니다. 이 메서드는 파일의 현재 경로와 새 경로를 전달하여 파일을 이동시킵니다.
아래는 이러한 작업들을 수행한다고 가정한 예시 코드입니다.
import Foundation
let fileManager = FileManager.default
let documentsURL = fileManager.urls(for: .documentDirectory, in: .userDomainMask).first!
do {
// 새 디렉토리 생성
let newDirectoryURL = documentsURL.appendingPathComponent("NewDirectory")
try fileManager.createDirectory(at: newDirectoryURL, withIntermediateDirectories: true, attributes: nil)
// 파일을 새 디렉토리로 이동
let fileURL = documentsURL.appendingPathComponent("file.txt")
let newFileURL = newDirectoryURL.appendingPathComponent("file.txt")
try fileManager.moveItem(at: fileURL, to: newFileURL)
} catch {
print(error)
}
위 예시 코드에서 documentDirectory
는 만약 iOS 앱을 개발하고 있다면 앱의 문서 디렉토리를 나타냅니다. macOS 앱을 개발하고 있다면 User domain의 document 디렉토리일 것입니다.
참고로 이 코드를 실행할 때 파일 및 디렉토리 접근 권한에 대한 확인이 필요할 수 있습니다.