解析 json 文件会返回不需要的结果

Posted

技术标签:

【中文标题】解析 json 文件会返回不需要的结果【英文标题】:Parsing a json file returns unwanted result 【发布时间】:2015-02-11 13:51:36 【问题描述】:

经过一番挣扎,我终于得到了我的 Json 文件来解析。虽然我猜它正在解析..当我试图访问一个带有很多“对象”的值时我得到了零。这是我使用swiftyJson 库的代码。这就是我的json 的样子。我使用的代码是

import UIKit

class MapViewController: UIViewController 

    override func viewDidLoad() 
        super.viewDidLoad()

        if let jsonData = getJSON("hls", extn: "json") 
            println(jsonData)
            let jsonDataResult = JSON(jsonData)
            var js = jsonDataResult["name"].string
            println("\(js)")

        
    

    func getJSON(fileName: String, extn: String) -> NSData?
    
        if let fileURL = NSBundle.mainBundle().URLForResource(fileName, withExtension: extn) 
            if let data = NSData(contentsOfURL: fileURL) 
                return data
            
        
        return nil
    


我不明白在控制台中获取以下输出时我做错了什么。任何帮助和提示将不胜感激!

【问题讨论】:

【参考方案1】:

当使用 SwiftyJSON 时,我相信你需要使用另一个初始化器。也就是说:

let jsonDataResult = JSON(jsonData)

为了使其正常工作,jsonData 之前已经运行并解析过一次。您想要的 init 如下,因为您将原始 nsData 传递给它,如您的输出所示。

let jsonDataResult = JSON(data: jsonData)

【讨论】:

谢谢!就是这样 :) 不知道这两个初始化器之间有什么区别。

以上是关于解析 json 文件会返回不需要的结果的主要内容,如果未能解决你的问题,请参考以下文章

用jquery的post方法提交数据需要servlet返回的数据类型是json的数据格式,应该怎么做??

使用 Powershell 解析从 Web 请求返回的 JSON 字节流而不写入文件

springmvc的ajax

将 XML 数据解析为 JSON

解析 JSON 文件数据后,在结果 XML 中添加注释

UiPath--文件操作详解