我有一个使用此调用创建的 JSON 数组:
guard let json = (try? JSONSerialization.jsonObject(with: content, options: JSONSerialization.ReadingOptions.mutableContainers)) as? [Any] else {
print("This is not JSON!!!")
return
}
我正在尝试从数组中的 JSON 对象中获取元素以使用以下代码显示它们:
struct sWidget: Codable{
var createdBy: String
var createdDate: Date
var status: String
var widgetNumber: String
var updatedBy: String
var updatedDate: Date
}
do {
let decoder = JSONDecoder()
for (index, value) in json.enumerated() {
let currentWidget = try decoder.decode(sWidget.self, from: json[index] as! Data)
let currentNum = currentWidget.widgetNumber
//print(currentNum)
widgetNums.append(currentNum)
}
}
catch {
print("decoding error")
}
代码编译但是当我运行它时,我在输出中得到这个错误:
无法将类型“__NSDictionaryM”(0x1063c34f8)的值转换为“NSData”(0x1063c1090)。2018-08-09 09:41:02.666713-0500 TruckMeterLogScanner[14259:1223764] 无法将“__NSDictionaryM”(0x1063c34f8)类型的值转换为“NSData”(0x1063c1090)。
我仍在调查,但任何提示都会有所帮助。