如何使用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<List<String>>
的地方提供了SerializationStrategy<List<String?>>
。我如何获得后者?
答案 0 :(得分:2)
您可以使用NullableSerializer
:
val dataJson = json.stringify(NullableSerializer(String.serializer()).list, data)
println(dataJson) // prints ["v1",null,"v3"]