我正在尝试在 Swift 4.1 中使用 JSON 解码器,但我不断收到
“无法读取数据,因为它的格式不正确”
我不知道为什么。我从 中调用一个 JSON 文件Bundle.main.path
,然后在URL(fileURLWithPath:)
.
查看文件路径并在本地打开它,似乎 JSON 数据格式正确。在我的data.json文件中,数据是这样设置的。
{
"plant": "1015",
"name": "SPEEDVALE",
"key": "5035",
}
我有一个看起来像这样的结构
struct AllData: Decodable {
let plant: String
let name: String
let key: String
}
然后我有一个声明为这个的变量
private var x: [AllData] = []
然后代码的解码块看起来像这样
do {
let path = Bundle.main.path(forResource: "data", ofType: "json")
let jsonData = try Data(contentsOf: URL(fileURLWithPath: path!))
do {
plantDataSerialized = try [JSONDecoder().decode(AllData.self, from: jsonData)]
print(plantDataSerialized)
} catch let error{
print(error.localizedDescription)
}
} catch let error {
print(error.localizedDescription)
}