错误:无法在JSON中转换类型..的值

时间:2015-10-25 15:46:38

标签: swift swift2

我想制作一个关于天气的简单应用。

import Foundation

let getWeatherInfoUrl = NSURL(string: "http://www.weather.com.cn/adat/sk/101280601.html")
let weatherInfo = NSData(contentsOfURL:getWeatherInfoUrl!)
if weatherInfo != nil
    {
    print(weatherInfo!) 
    let json: NSData = try! NSJSONSerialization.JSONObjectWithData(weatherInfo!, options: NSJSONReadingOptions.AllowFragments) as! NSData
    }else{
    print("error")
    }

此代码主要从url获取数据,然后更改为JSON。

它可以运行但是调试区域显示了这个:

enter image description here

如何解决此错误?

1 个答案:

答案 0 :(得分:0)

由于您将json转换为NSData而导致的错误,但根据解析数据,它应该是NSArrayNSDictionary。您可以尝试使用以下代码,它将NSDictionary对象作为json,您可以进一步操作以获取所需信息。

let getWeatherInfoUrl = NSURL(string: "http://www.weather.com.cn/adat/sk/101280601.html")!
if let weatherInfo = NSData(contentsOfURL:getWeatherInfoUrl) {
    print(weatherInfo)
    let json = try! NSJSONSerialization.JSONObjectWithData(weatherInfo, options: NSJSONReadingOptions.AllowFragments) as? NSDictionary
}
else{
    print("error")
}