..... 算了直接上代码吧
创建一个test.json文件 在项目根目录
比如:
[
{
"name" : "张三",
"sex" : "男",
"age": 18,
"isGay": false
},
{
"name" : "李四",
"sex" : "男",
"age": 19,
"isGay": true
},
]
简单封装
class TestManager {
static var testList: [[String: Any]] {
guard
let path = Bundle.main.path(forResource: "test", ofType: "json")
else {
return []
}
do {
// 转换为Data数据
let jsondata = try Data(contentsOf: URL(fileURLWithPath: path), options: .mappedIfSafe)
// 序列化
let jsonObject = try JSONSerialization.jsonObject(with: jsondata, options: .mutableLeaves)
// 转换为自己json的数据格式
// 当然也可以使用ObjectMapper等直接转换为模型数据
return jsonObject as? [[String: Any]] ?? []
} catch {
print("本地数据获取错误 = \(error.localizedDescription)")
return []
}
}
}
调用:
let list = TestManager.testList
print("list =\(list)")
打印结果:
list =[["age": 18, "name": 张三, "isGay": 0, "sex": 男], ["name": 李四, "sex": 男, "isGay": 1, "age": 19]]
注意事项:
如果你的打印结果是 list = []
空数组
请检查:
TARGET ---> Build Phases ---> Copy Bundle Resources
确保里边有你创建的test.json文件
如果没有, 点击+号添加即可