Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
swift-json嵌套解析_Json_Swift - Fatal编程技术网

swift-json嵌套解析

swift-json嵌套解析,json,swift,Json,Swift,我试图解析json并将其存储在对象中,但“可用性”不存储任何内容。也许结构创建错误?这似乎是正确的,因为它是一个数组。也许我用的是图书馆?我可以存储第一篇结构文章,但ArticleOne总是空的。我必须添加更多注释,因为stack认为我的文章主要是代码 您正在使用的结构的属性-ArticleOne-必须调整为json中的值: struct ArticleOne: Codable { let DemoVehicleAvailabilityId: Int let DemoVehicl

我试图解析json并将其存储在对象中,但“可用性”不存储任何内容。也许结构创建错误?这似乎是正确的,因为它是一个数组。也许我用的是图书馆?我可以存储第一篇结构文章,但ArticleOne总是空的。我必须添加更多注释,因为stack认为我的文章主要是代码

您正在使用的结构的属性-
ArticleOne
-必须调整为json中的值:

struct ArticleOne: Codable {
    let DemoVehicleAvailabilityId: Int
    let DemoVehicleId: Int
    let AvailabilityDateTime: String
    let IsOnHold: Bool
    let IsBooked: Bool
    let BookedDateTime: String
    let BookedBy: String?
    let IsAvailableForDemo: Bool
    let RiderReferenceId: Int
    let IsCheckedIn: Bool
    let CheckinDateTime: String
    let HoldUntill: String
    let UpdatedDT: String
    let ReservedByName: String?
    let ReservedByEmail: String?
    let ReservedByMobileNumber: String?
    let IsReservationConfirmed: Bool
    let ReservationConfirmDateTime: String
    let IsThisTimeSlotActive: Bool
    let History: [T]
}

T
历史记录中的元素类型

您会得到什么错误?提示:只有双引号中的值是
String
。并指定CodingKeys以将大写键映射到小写结构成员。可用性始终为空。在
do-Catch
块中捕获
error
。它会告诉你到底出了什么问题。或者检查类型。有很多很多不匹配的地方。谢谢瓦迪安。这就是我得到的错误。类型不匹配(Swift.String,Swift.DecodingError.Context(编码路径:[u JSONKey(stringValue:“索引0”,intValue:0),编码键(stringValue:“可用性”,intValue:nil),_JSONKey(stringValue:“索引0”,intValue:0),编码键(stringValue:“Isthistimesolactive”,intValue:nil)],调试说明:“应解码字符串,但找到了一个数字。”,underyingerror:nil)阅读错误,CodingKey
IsHistTimesActive
…应该解码字符串,但找到了一个数字,这是非常清楚的。再次,只有双引号中的值是
字符串
必须更新ArticleOne
,我将添加所需的更正shortly@user1707694我已经更新了答案。你必须调整类型
历史记录