微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在 JSON 负载内的动态值上生成数据类

如何解决在 JSON 负载内的动态值上生成数据类

我有一个看起来像这样的有效载荷:

{
    "data": {
        "12345": {
            "is_indexable": true,"description": "Lorem description","items": {
                "id": 2644,"name": "Naming here"
            }
        },"678910": {
            "is_indexable": false,"description": "Lorem description 2","items": {
                "id": 29844,"name": "Naming here again"
            }
        }
    }
}

我想使用 https://transform.tools/json-to-kotlin 之类的工具为该有效负载生成特定的数据类,但这是不可能的,因为“数据”对象内的数组是 ID(因此是动态数据)

data class Root(
    val data_field: Data
)

data class Data(
    val payload: List<Payload>,// Something to represent the dynamic ids
)

data class Payload(
    val isIndexable: Boolean,val description: String,val items: Items
)

data class Items(
    val id: Long,val name: String
)

我不知道我是否清楚,你有没有想法以干净的方式来做这个?

谢谢大家!

解决方法

你需要映射数组来实现这一点。您现在正在地图中构建地图。如果需要数组,应该如下所示;

Obj*
,

android studio 中添加了一个惊人的插件,它可以将此有效负载转换为合适的类 例如,JSON 有一个对象,对象内部有很多对象和数组,这个工具会将所有这些确定为类

您可以从此链接加载它:

https://plugins.jetbrains.com/plugin/9960-json-to-kotlin-class-jsontokotlinclass 通过此链接,您还可以了解如何使用此工具

转到android studio并从文件->设置->插件->从磁盘安装插件

enter image description here

并轻松转换它

祝你好运

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。