概要
Swift のファイル操作まわりを自分用にメモ
- touch: ファイル作成
- mkdir: ディレクトリ作成
- ls: ディレクトリ配下のファイル名を取得
コード
let documentUrl = FileManager.default.urls(
for: .documentDirectory, in: .userDomainMask).first!
// "touch"
let touchPath = documentUrl.appendingPathComponent("file.txt")
let text = "(ここにテキストファイルの内容を書く)"
do {
try text.write(
to: touchPath,
atomically: false,
encoding: String.Encoding.utf8 )
} catch let error as NSError {
print(error.localizedDescription);
}
// "mkdir"
let mkdirPath = documentUrl.appendingPathComponent("MyFolder")
do {
try FileManager.default.createDirectory(
atPath: mkdirPath.path,
withIntermediateDirectories: false,
attributes: nil)
} catch let error as NSError {
print(error.localizedDescription);
}
// "ls"
do {
let directoryContents =
try FileManager.default.contentsOfDirectory(atPath: documentUrl.path)
print(directoryContents)
} catch let error as NSError {
print(error.localizedDescription)
}
注: mkdir
, ls
の atPath
は.absoluteString
で取得される文字列("file:///..."
)だと「The file “...” doesn’t exist.」というエラーになります。.path
を使ってください。