0
我用NSKeyedArchiver.archiveRootObject(Any, toFile: String)
函數來將對象數組存儲在ios的plist中。快速刪除plist
每次我調用這個函數時,新的數據都會添加到plist文件中,而不是覆蓋舊的數據。
我的想法是刪除舊的plist文件並將數據寫入一個新創建的同名同名plist。
但我不知道如何用swift刪除plist文件。希望有人能提前幫助和感謝!
我用NSKeyedArchiver.archiveRootObject(Any, toFile: String)
函數來將對象數組存儲在ios的plist中。快速刪除plist
每次我調用這個函數時,新的數據都會添加到plist文件中,而不是覆蓋舊的數據。
我的想法是刪除舊的plist文件並將數據寫入一個新創建的同名同名plist。
但我不知道如何用swift刪除plist文件。希望有人能提前幫助和感謝!
要從系統中刪除一個文件:
do {
if FileManager.default.fileExists(atPath: pathToPlist) {
try FileManager.default.removeItem(atPath: pathToPlist)
}
} catch {
print(error)
}
希望的一句話:你不能從你的包刪除文件。
你確定你正在寫你想要的對象嗎?也許你的數組中有重複。嘗試記錄它。 archiveRootObject應覆蓋舊文件。 – DrummerB
對不起,但你的假設是不正確的。 'NSKeyedArchiver.archiveRootObject'不會附加到文件。它會覆蓋任何現有的文件。 – rmaddy
嘿,夥計們!謝謝你的幫助!問題是DrummerB說,我在我的數組中複製了數據! –