【问题标题】:How to save 2d array data permanently using userdefaults.standard如何使用 userdefaults.standard 永久保存二维数组数据
【发布时间】:2018-03-29 23:51:15
【问题描述】:

我正在尝试使用 userdefaults 保存二维数组数据,但我收到此错误 无法将类型“[[String]]”的值转换为预期的参数类型“String”我的代码

var tempQuestion2 = [tempQuestion]
        if var tempData = UserDefaults.standard.stringArray(forKey: "tempData")
        {
            tempData.append(tempQuestion2)
            tempQuestion2 = tempData
        }
UserDefaults.standard.set(tempQuestion2, forKey: "tempData")

tempQuestion 是一个字符串数组,其中包含 [“9+1=10”, “5+4=9”] 之类的数据,我希望 tempQuestion2 为 [["9+1=10, "5+4=9" ], ["3+4=7", "4+1=5"]] 我猜我的问题是在 UserDefaults.standard.stringArray。我的问题与链接不同,因为该问题是关于字典而不是数组数组。

【问题讨论】:

标签: arrays swift multidimensional-array nsuserdefaults


【解决方案1】:

将数组数组保存和加载到UserDefaults没有问题,以保存您的数据使用:

UserDefaults.standard.set(tempQuestion2, forKey: "tempData")

要读回(和更新)数组数组,请使用:

// Assuming tempQuestion is [String]
if var tempData = UserDefaults.standard.array(forKey: "tempData") as? [[String]] {
    tempData.append(tempQuestion2)
    UserDefaults.standard.set(tempData, forKey: "temp")

}

【讨论】:

  • 好电话。 +1。
猜你喜欢
  • 2014-02-20
  • 1970-01-01
  • 2012-11-25
  • 2019-06-28
  • 1970-01-01
  • 1970-01-01
  • 2021-09-14
  • 2021-10-19
相关资源
最近更新 更多