0
ここで何が間違っていますか? すべて私は与えられたファイルを削除しようとしています。すべてdocumentationとexamples私はこれが動作するはずです。URLを削除してもすぐには動作しません3
func deleteThisFile(fileToDelete: String) {
let tempLocalDir = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask).first
do {
let directoryContents = try FileManager.default.contentsOfDirectory(at: tempLocalDir!, includingPropertiesForKeys: nil, options: [])
let tempList = directoryContents.filter{ $0.absoluteString.contains(fileToDelete) }
//tried these things:
try FileManager.removeItem(tempList.first) // Argument labels '(_:)' do not match any available overloads
/*
* try FileManager.removeItem(at: tempList.first!) // Ambiguous reference to member 'removeItem(atPath:)'
*
* try FileManager.removeItem(atPath: (tempList.first?.absoluteString)!) // Ambiguous reference to member 'removeItem(atPath:)'
*/
} catch let error as NSError {
print(error.localizedDescription)
}
}
コメントしていないのは、入力時にFileManager.removeItemの自動入力を求めるものです。
あなたがNSFileManager
のインスタンスメソッドであるremoveItem(at:)
を使用する必要がありスウィフト3では
なぜ「.default」が必要ですか?なぜなら、.defaultが必要な理由を理解できないからです。 – brw59
'removeItem(at:)'を呼び出すには、 'NSFileManager'または' FileManager'のインスタンスが必要なので、私は感謝しています。そのシングルトンを使用する代わりに、新しい 'FileManager'をインスタンス化することもできますが、常にそのメソッドを呼び出すインスタンスが必要です。 –
ああ、それは意味がある、ありがとう – brw59