如何快速解析这个 JSON 数据

Posted

技术标签:

【中文标题】如何快速解析这个 JSON 数据【英文标题】:How to parse this JSON data in swift 【发布时间】:2017-10-17 14:02:33 【问题描述】:

我在解析来自 Web 服务器的 json 数据时遇到问题。如果有人可以帮助我,我将非常感激。我在 ios 应用程序中使用 swift。任何参考资料也会有很大帮助。

[

    "0": "M26177M21MUG",
    "1": "Imbwa yigisha umwana gukambakamba",
    "2": "147746956612e34",
    "3": "2016/10/26",
    "4": "Amazing Video",
    "5": "2016-10-26",
    "videokey": "M26177M21MUG",
    "title": "Imbwa yigisha umwana gukambakamba",
    "file_name": "147746956612e34",
    "file_directory": "2016/10/26",
    "description": "Amazing Video",
    "datecreated": "2016-10-26"
,

    "0": "HDYBX1NOBBU7",
    "1": "KIGALI NZIZA 2016 2040",
    "2": "1477409119f676f",
    "3": "2016/10/25",
    "4": "KIGALI NZIZA 2016 2040",
    "5": "2016-10-25",
    "videokey": "HDYBX1NOBBU7",
    "title": "KIGALI NZIZA 2016 2040",
    "file_name": "1477409119f676f",
    "file_directory": "2016/10/25",
    "description": "KIGALI NZIZA 2016 2040",
    "datecreated": "2016-10-25"
,

    "0": "6ANO5UXHAD76",
    "1": "Umugabo yigishije imbwa ye gusenga mbere yo kurya",
    "2": "147746949813fd9",
    "3": "2016/10/26",
    "4": "NGWINO by KNC New Rwandan music 2013",
    "5": "2016-10-26",
    "videokey": "6ANO5UXHAD76",
    "title": "Umugabo yigishije imbwa ye gusenga mbere yo kurya",
    "file_name": "147746949813fd9",
    "file_directory": "2016/10/26",
    "description": "NGWINO by KNC New Rwandan music 2013",
    "datecreated": "2016-10-26"
]

我获取数据的链接是:

http://marieadelaideschool.rw/stream/api/vod.php

【问题讨论】:

我看到一个字典数组(可以解析成自定义对象)。你试过什么? 你可以在网上找到 JSON 教程。使用 Swift 4,它变得更加容易。尽管如此,我总是喜欢 SwiftyJSON。这是链接github.com/SwiftyJSON/SwiftyJSON 【参考方案1】:

我认为这个使用 Alamofire 的示例函数会对您有所帮助...

func callApi()

    Alamofire.request(.GET, "http://marieadelaideschool.rw/stream/api/vod.php", encoding: .JSON).responseJSON
        
            response in switch response.2
            
            case .Success(let JSON):
                print(JSON)
                let responseData = JSON as! NSArray
                for i in responseData
                
                    let object = i as! NSDictionary
                    let title = object["title"]
                    print(title!)
                
                break
            case .Failure(let error):
                print("Request failed with error: \(error)")
                break
            

    


【讨论】:

以上是关于如何快速解析这个 JSON 数据的主要内容,如果未能解决你的问题,请参考以下文章

python json快速解析命令

如何高效快速地解析大量行格式json文件

使用swift解析包含索引的json数据?

如何快速解析数组的json数组

快速解析 JSON 数组,对其进行排序并找到重叠的日期

快速解析双 JSON 编码数组并访问它