如何在Swift中将JSON字符串转换为普通字符串?

时间:2016-05-07 22:24:30

标签: json swift swifty-json

我使用SwiftyJSON从API获取JSON格式的数据。这些数据存储在一个我想转换成String的变量中。

我有以下内容:

func parseJSON() {

    let path2 = NSURL(string: "https://pokeapi.co/api/v2/pokemon/5")
    let jsonData2 = NSData(contentsOfURL: path2!) as NSData!
    let readableJSON2 = JSON(data: jsonData2, options: NSJSONReadingOptions.MutableContainers, error: nil)

    numberOfRows = readableJSON2["name"].count //maybe hardcode this in the future?

    let id = readableJSON2["id"]
    NSLog("\(id)")
    let name = readableJSON2["name"]
    NSLog("\(name)")
    let weight = readableJSON2["weight"]
    NSLog("\(weight)")
    let height = readableJSON2["height"]
    NSLog("\(height)")


    idArray.append(id)
}

请注意,idArray是一个String数组:

var idArray = [String]()

NSLog("(id)")返回5.我希望这5是一个字符串,但我不知道如何。我尝试了以下方法:

var id = readableJSON2["id"].string as String!

但结果却是零..

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

您需要对值进行类型转换而不是强制将其解包为String,如下所示:

var id = String(readableJSON2["id"])

如果有效,请告诉我。