【问题标题】:How to locally save an array in swift [duplicate]如何快速在本地保存数组[重复]
【发布时间】:2015-11-24 12:03:18
【问题描述】:

如何快速在本地保存数组? 我的应用程序中有一个数组,每次它向用户显示 1 个随机字符串。字符串显示后,将从数组中删除。我的问题是,当用户存在应用程序并重新启动它时,我的数组会重新开始;我无法取回用户退出应用之前的数组。

【问题讨论】:

    标签: arrays swift local-storage local


    【解决方案1】:
    let myStringArray:[String] = ["abc", "def", "ghi"]
    
    let documentsDirectoryURL =  NSFileManager().URLForDirectory(.DocumentDirectory, inDomain: .UserDomainMask, appropriateForURL: nil, create: true, error: nil)!
    let myFilePath = documentsDirectoryURL.path!.stringByAppendingPathComponent("myArray.plist")
    

    保存到磁盘

    if NSKeyedArchiver.archiveRootObject(myStringArray, toFile: myFilePath) {
        println(true)
    }
    

    从磁盘加载

    if let myLoadedStringArray = NSKeyedUnarchiver.unarchiveObjectWithFile(myFilePath) as? [String]{
        println(myLoadedStringArray) // "[abc, def, ghi]"
    }
    

    或者如果你想使用 NSUserDefaults:

    NSUserDefaults.standardUserDefaults().setObject(myStringArray, forKey: "myarray")
    
    if let myLoadedArray = NSUserDefaults.standardUserDefaults().stringArrayForKey("myarray") {
        println(myLoadedArray)
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-03-12
      • 1970-01-01
      • 2017-02-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-11-14
      相关资源
      最近更新 更多