我有一个json对象,如下所示
{"level" :{"currentLevel":"1","score":"100"}}
我在项目文件夹中有这个json数据,我使用SwiftyJSON来解析我的儿子并读取值。一切都很好。
现在我需要更新分数,我正在尝试如下
var json = JSON({"level" :{"currentLevel":"1","score":"100"}})
json["level"]["score"] = "200"
这也可以正常工作,json会更新但是下面尝试失败
var json = JSON({"level" :{"currentLevel":"1","score":"100"}})
var updatedScore:String = "200"
json["level"]["score"] = updatedScore
我收到编译错误
Type [Subscript] does not conform to Protocol 'StringLiteralConvertible'
有关如何使用变量更新SwiftJSON JSON对象的任何建议都会有所帮助
谢谢
更新:我的解决方案
这是我最后做的事情
var json = JSON({"level" :{"currentLevel":"1","score":"100"}})
var level = (json["level"] as JSON).dictionaryObject
let updatedScore = "200"
level!["currentLevel"] = updatedScore
json["level"] = JSON(level!)
这有效
答案 0 :(得分:1)
如果要将json保存为字典
,请尝试以下操作((json["level"]as nsdictionary)["score"] as NSString = updatedScore)