swift3读取本地json数据 --JSONSerialization.jsonObject()

前端之家收集整理的这篇文章主要介绍了swift3读取本地json数据 --JSONSerialization.jsonObject()前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

1、本地json数据如下:data.json@H_502_3@

{@H_502_3@

"total":2,@H_502_3@

"status":"ok",19)"> "data":[@H_502_3@

{@H_502_3@

"id":1,19)"> "name":"周杰伦",19)"> "head_image":null,19)"> "tel":"1323232232",19)"> "email":"zhoujielun@hotmail.com",19)"> "birth_day":"1990-02-02",19)"> "address":"中国香港"@H_502_3@

},@H_502_3@

{@H_502_3@

"id":2,19)"> "name":"庄心妍",19)"> "tel":"1343432345",19)"> "email":"zhuangxinyan@126.com",19)"> "birth_day":"1986-05-22",19)"> "address":"中国河南省"@H_502_3@

}@H_502_3@ }

2、模型数据UserData 如下:@H_502_3@

@H_502_3@

class UserData: NSObject,NSCoding {@H_502_3@


@H_502_3@

var name:String?@H_502_3@

var tel:String?@H_502_3@

var headImgUrlStr:String?@H_502_3@

var email:String?@H_502_3@

var address:String?@H_502_3@ }


@H_502_3@

3、读取本地数据代码如下:@H_502_3@

var userList:NSMutableArray?@H_502_3@

let path =Bundle.main.path(forResource:"data",ofType: "json")@H_502_3@

let url =URL(fileURLWithPath: path!)@H_502_3@

do{@H_502_3@

let data =tryData(contentsOf: url)@H_502_3@

let json:Any =tryJSONSerialization.jsonObject(with: data,options:JSONSerialization.ReadingOptions.mutableContainers)@H_502_3@

let jsonDic = jsonas!Dictionary<String,Any>@H_502_3@

let datalist = jsonDic["data"]as!NSArray@H_502_3@

userList = UserData.mj_objectArray(withKeyValuesArray: datalist)//该方法在第三个JSON解析库MJExtension中。你可以忽略本行代码@H_502_3@

@H_502_3@

print(datalist)//输出数据@H_502_3@

}catchlet erroasError!{@H_502_3@

print("读取本地数据出现错误",erro)@H_502_3@

}@H_502_3@

猜你在找的Swift相关文章