首先:我知道 JSON 应该包含一个带有键值对的数组,但它不是我的 API,所以我无法更改它。
响应如下所示:
{
"translations": {
"my.key.nr.0": "Value 0",
"my.key.nr.1": "Value 1",
"my.key.nr.2": "Value 2",
"my.key.nr.3": "Value 3",
},
"hash": "123xyz",
"length": 3,
"language": "de"
}
这是我到目前为止的 DTO:
data class TranslationsDto(
val translations: ??????????, // <-- dont't know what to use here
val hash: String?,
val length: Int?,
val language: String?
)
最后,这是我的问题:
我需要解析我可以在我的应用程序中使用的 DTO 的响应(至少 Retrofit 应该解析响应)。如果 translations
的值是一个数组,那就没有问题,但我不知道如何解析这个 JSON 结构。
也许你们中的任何人都有一些想法?
最佳答案
该死...毕竟有时我很盲目...
只需使用 Map<String,String>
:
data class TranslationsDto(
val translations: Map<String,String>?,
val hash: String?,
val length: Int?,
val language: String?
)
关于json - 如何解析包含键值对的 JSON 对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57272556/