【问题标题】:Serialize a list of optionals with kotlinx serialization使用 kotlinx 序列化序列化选项列表
【发布时间】:2019-12-31 07:43:40
【问题描述】:

如何使用 kotlinx 序列化对可选字符串列表进行字符串化?我想执行类似于:

val json = Json(JsonConfiguration.Stable)
val data: List<String?> = listOf("v1", null, "v3")
val dataJson = json.stringify(String.serializer().list, data)

但是,这不会编译。我知道String.serializer().list 提供了SerializationStrategy&lt;List&lt;String&gt;&gt;,我需要SerializationStrategy&lt;List&lt;String?&gt;&gt;。如何获得后者?

【问题讨论】:

    标签: json kotlin kotlinx.serialization


    【解决方案1】:

    你可以使用NullableSerializer:

    val dataJson = json.stringify(NullableSerializer(String.serializer()).list, data)
    println(dataJson) // prints ["v1",null,"v3"]
    

    【讨论】:

    • 正是我想要的,非常感谢!
    猜你喜欢
    • 2019-06-17
    • 2020-12-05
    • 2021-02-24
    • 2021-09-12
    • 1970-01-01
    • 2020-11-20
    • 2021-05-14
    • 1970-01-01
    • 2020-02-15
    相关资源
    最近更新 更多