次のコードを実行して、オブジェクトの単純な配列を永続メモリに保存しようとしています。
let fileManager=NSFileManager()
let urls = fileManager.URLsForDirectory(.DocumentDirectory, inDomains: .UserDomainMask)
if urls.count>0{
let localDocumentsDirectory=urls[0]
let archivePath=localDocumentsDirectory.URLByAppendingPathExtension("meditations.archive")
NSKeyedArchiver.archiveRootObject(self.meditationsArray, toFile: archivePath.path!)
let restored=NSKeyedUnarchiver.unarchiveObjectWithFile(archivePath.path!)
print("restored \(restored)")
}
}
それでも、コードのように復元された日付を出力すると、nil が見つかります。
逆に、CachesDirectory を使用すると、配列はすぐに正常に復元されます
が、アプリを再度開いてデータを読み込もうとすると、配列が失われます。データを永続的に保存する正しい方法は何ですか?