如何修复Decodable错误提示keynotfound?

时间:2019-01-12 21:48:45

标签: swift decodable

我正在尝试在最基本的级别上使用可解码的代码,以学习如何做。我尝试为一些非常简单的JSON解析设置可解码的代码,并不断收到我不知道如何纠正的错误:

  

致命错误:“尝试!”表达式意外引发错误:Swift.DecodingError.keyNotFound(CodingKeys(stringValue:“ firstName”,intValue:nil),Swift.DecodingError.Context(codingPath:[],debugDescription:“没有与键CodingKeys相关联的值(stringValue:\” firstName \“,intValue:无)(\” firstName \“)。”,底层错误:无)):文件/BuildRoot/Library/Caches/com.apple.xbs/Sources/swiftlang_Fall2018/swiftlang_Fall2018-1000.11.41.42/src/ swift / stdlib / public / core / ErrorType.swift,第184行

这是我输入到Playgrounds中的代码:

import UIKit

struct Customer : Decodable {
    var firstName :String
    var lastName :String
    var age :Int
}

let json = """
{
"firstname" : "John",
"lastName" : "Doe",
"age" : 34
}

""".data(using: .utf8)!

let customer = try! JSONDecoder().decode(Customer.self, from: json)
print(customer)

当我打印时(在代码的底部),我希望看到:

Customer(firstName: "John", lastName: "Doe", age: 34). 

但是我得到的只是上面的错误。您能告诉我我做错了什么或我想念什么吗?

0 个答案:

没有答案