Swift 4 如何在文档目录中写入/读取字典?

Posted

技术标签:

【中文标题】Swift 4 如何在文档目录中写入/读取字典?【英文标题】:Swift 4 How do I write/read dictionaries to/from the document directory? 【发布时间】:2018-07-17 02:56:23 【问题描述】:

我有要保存到文档目录的字典形式的加密。我还希望能够从文档目录中检索这些字典以在应用程序中解密。如何在文档目录中写入/读取字典?

【问题讨论】:

How to write Dictionary to a file?的可能重复 【参考方案1】:

Dictionary 有自己的 write 方法,该方法将字典内容的属性列表表示形式写入给定的 URL。您可以使用以下代码:

    // Get application document directory path array
    let paths = NSSearchPathForDirectoriesInDomains(FileManager.SearchPathDirectory.documentDirectory, FileManager.SearchPathDomainMask.allDomainsMask, true)
    let fileName = "users"

    if let documentPath = paths.first 
        let filePath = NSMutableString(string: documentPath).appendingPathComponent(fileName)

        let URL = NSURL.fileURL(withPath: filePath)

        let dictionary = NSMutableDictionary(capacity: 0)

        dictionary.setValue("valu1", forKey: "key1")
        dictionary.setValue("valu2", forKey: "key2")

        let success = dictionary.write(to: URL, atomically: true)
        print("write: ", success)
    

阅读

    if let dictionary = NSMutableDictionary(contentsOf: URL)
        print(dictionary)
    

希望,它会起作用。

【讨论】:

【参考方案2】:

步骤包括

    获取文档 URL 将日期写入文件 保存到磁盘

使用这里的语法:

https://***.com/a/26557965/6342609

【讨论】:

我如何将字典类型写入文件?

以上是关于Swift 4 如何在文档目录中写入/读取字典?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 swift 中读取数组和字典的 plist

如何在python中读取和写入字典到外部文件? [复制]

如何从 ios webview 读取文档目录中的图像文件

如何在 Swift 4 中安全地解开字典值?

将嵌套字典写入 plist (Swift) 时的类型问题

如何使用与 NewtonSoft (JSON.Net) 组件中的 JSON 匹配的 Swift 类从/向 JSON 读取/写入对象数组?