如何将 JSON 字符串转换为 Swift 中的普通字符串?
How to convert a JSON string into a normal string in Swift?
我使用 SwiftyJSON 从 API 中获取 JSON 格式的数据。此数据存储在一个变量中,我想将其转换为字符串。
我有以下内容:
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 是一个字符串数组:
var idArray = [String]()
NSLog("(id)") returns一个5,我希望这个5是一个字符串,但我不知道如何。我尝试了以下方法:
var id = readableJSON2["id"].string as String!
但这结果变成了零..
有什么想法吗?
您需要对值进行类型转换,而不是强制将其解包为字符串,如下所示:
var id = String(readableJSON2["id"])
如果可行,请告诉我。
我使用 SwiftyJSON 从 API 中获取 JSON 格式的数据。此数据存储在一个变量中,我想将其转换为字符串。
我有以下内容:
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 是一个字符串数组:
var idArray = [String]()
NSLog("(id)") returns一个5,我希望这个5是一个字符串,但我不知道如何。我尝试了以下方法:
var id = readableJSON2["id"].string as String!
但这结果变成了零..
有什么想法吗?
您需要对值进行类型转换,而不是强制将其解包为字符串,如下所示:
var id = String(readableJSON2["id"])
如果可行,请告诉我。