2015-03-25 33 views
0

我有一个JSON对象,如下更新值 - SwiftyJSON

{"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!) 

而且这个工程

回答

1

尝试以下,如果要保存的JSON作为词典

((json["level"]as nsdictionary)["score"] as NSString = updatedScore)