Swift開發2 jSON解析

2022-09-20 04:15:14 字數 1336 閱讀 4666

一.swiftyjson

class animal 

func swiftyjson()"

if let jsondata = jsonstr.data(using: .utf8)

}

這種解析結構明確,模型轉換需要手動編碼

var name: string?

var age: int?

required init?(map: map)

name

age

}} let jsonstr = ""

let name = animal?.name!

let age = animal?.age!

print("swiftyjson: name: \(name!),age: \(age!)")

let jsonstring = user?.tojsonstring()

print(jsonstring!)

}三.handyjson

class animal: handyjson 

}func handyjson()"

if let animal = animal.deserialize(from: jsonstr)

}

使用handyjson需要繼承handyjson,不需要手動編碼就可以完成模型轉換,比較簡單。

四. 原生json解析,encoder/decoder

class bank: codable 

class teacher: codable

func nativejson(),],\"school\":\"北京四中\"}"

let jsondata = jsonstr.data(using: .utf8)

let decoder = jsondecoder()

do } catch

}

系統原生的解析也可以進行模型轉換,結果如下

通過對上面四種解析方式的比較,3,4種比較符合我們平時開發的需求,都可以進行模型轉換,同時對三,**行效能分析,執行解析1萬次,系統原生的效能稍好

方法耗時為:1.1795408710022457

方法耗時為:0.37943107699538814

所以在實際的開發中,可以根據專案情況優先選擇系統原生的json解析,前提是在swift 4以上才支援。

Swift解析JSON資料

從ios開發的角度來說,json更多的可以看作是一種包含很多鍵值對的物件。首先我從www.k780.com這個 中得到乙個實時天氣情況介面。這樣顯得清晰多了。那麼如何在swift工程裡對這個url進行解析呢?對json解析,我們需要用到nsjsonserialization。我現在用的是xcode7...

json入門 2 json在伺服器端的應用

response.setheader cache control no cache response.setcontenttype text plain response.setcharacterencoding utf 8 obj1.tostring 即為 response.getwriter p...

Swift中的JSON資料解析

平時寫小專案時請求json格式的資料,怎麼解析向來是乙個大問題,尤其碰到巢狀型的資料,更是不知道怎麼寫 才好,所以寫一篇教程來記錄一下。剛好好久也沒寫部落格了,趕快寫一篇來刷刷存在感 json是乙個以文字為主 輕量型,並且容易使用來儲存以及交換資料的方式。它通常用來呈現結構性的資料,許多我每天使用的...