1. 程式人生 > >讀取/解析本地檔案

讀取/解析本地檔案

先把讀取的swift程式碼貼出來,和oc類似,只不過NSBundle變成了Bundle:

swift 4.0
let jsonPath = Bundle.main.path(forResource: "resultdata", ofType: "json")
let data = NSData.init(contentsOfFile: jsonPath!)

接下來是對json資料進行解析,給出個json的樣本:

{
    "status": 0,
    "msg": "ok",
    "data": {
        "tags": [
            {
                "id
": "0", "title": "全部", }, { "id": "photo", "title": "快看我", } ]
, "comments": [ { "content": "不錯", "praise": "0", "date": "2017-08-25", } ]
}
}

這裡,這裡,開始解析:

let jsonDic:NSDictionary = try! JSONSerialization.jsonObject(with: data! as Data, options: JSONSerialization.ReadingOptions.mutableContainers) as! NSDictionary
let jsonDicData:NSDictionary = jsonDic.object(forKey: "data") as! NSDictionary
let array:NSArray = jsonDicData.object(forKey: "comments"
) as! NSArray;

讀取,解析,結束。
然而有時候卡到第一步了,怎麼回事?json檔案,明明自己拉進專案了,為什麼獲取到的path為nil呢 ?
方式不對,正確的step如下 — >

bundle

注意:json檔案是新增到Copy Bundle Resources裡面,不是Compile Sources裡邊。

點加號,把json檔案新增進去就好了,問題解決,資料拿到。

有問題請郵件:[email protected] , 請備註