gpt4 book ai didi

json - 使用嵌套的未知 ID 在 swift 4 中解析 JSON

转载 作者:行者123 更新时间:2023-11-28 05:56:49 25 4
gpt4 key购买 nike

我正在尝试解析这样的 json 结构:

{
"data": {
"1": {
"id": 1,
"name": "Bitcoin",
"symbol": "BTC",
"website_slug": "bitcoin",
"rank": 1,
"circulating_supply": 17142612.0,
"total_supply": 17142612.0,
"max_supply": 21000000.0,
"quotes": {
"USD": {
"price": 6401.53,
"volume_24h": 4161310000.0,
"market_cap": 109738944996.0,
"percent_change_1h": -0.12,
"percent_change_24h": -5.11,
"percent_change_7d": -1.94
}
},
"last_updated": 1531274181
},
"1027": {
"id": 1027,
"name": "Ethereum",
"symbol": "ETH",
"website_slug": "ethereum",
"rank": 2,
"circulating_supply": 100613441.0,
"total_supply": 100613441.0,
"max_supply": null,
"quotes": {
"USD": {
"price": 440.618,
"volume_24h": 1816230000.0,
"market_cap": 44332093270.0,
"percent_change_1h": -0.11,
"percent_change_24h": -7.03,
"percent_change_7d": -4.9
}
},
"last_updated": 1531274192
},
.
.
. continues on...

我在快速编写可编码结构时遇到困难:

struct Crypto: Codable{
let data: Coin

struct Coin: Codable{
let id_num: String

init(dictionary: [String : Coin]){
let key = dictionary.keys.first

self.id_num = key!

}
struct CoinInfo: Codable{
let id: String
let name: String
}
}
}

我的问题是每个数据的每个硬币的 ID 都不同。例如。比特币为 1,以太坊为 1027。我需要获取名称、符号和百分比更改以显示到表格 View 中。我该如何为此编写结构?

最佳答案

按如下方式更新您的结构:

struct Crypto: Codable{
let data: [String: CoinInfo]

struct CoinInfo: Codable{
let id: Int
let name: String
}
}

解码后使用:

let cryptoData = try JSONDecoder().decode(Crypto.self, from: coinData)

您将在cryptoData.data 中拥有CoinInfo 的字典。键将是表示 ID 的字符串。

注意CoinInfo中的idInt,不是String,以便匹配数据在 JSON 中。

关于json - 使用嵌套的未知 ID 在 swift 4 中解析 JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51276364/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com