Klaxon 解析 null
Posted
技术标签:
【中文标题】Klaxon 解析 null【英文标题】:Klaxon parse null 【发布时间】:2021-08-18 10:15:54 【问题描述】:我在使用Klaxon 5.5
时遇到问题
类:
data class QRResponse(
@field:SerializedName("qrType")
val qrType: String? = null,
@field:SerializedName("qrData")
val qrData: String? = null
)
代码:
val dataContents = result.contents
Log.d("ScanQRData", "result.contents : $dataContents")
val dataQR = Klaxon().parse<QRResponse>(dataContents)
Log.d("ScanQRData", "dataQR : $dataQR")
结果:
ScanQRData: result.contents : "qrType": "product", "qrData":"352307811"
ScanQRData: dataQR : QRResponse(qrType=null, qrData=null)
从Klaxon
解析后qrType
和qrData
null 发生了什么建议?
【问题讨论】:
【参考方案1】:Klaxon 不处理 @field:SerializedName
注释(您从哪里导入它?)。在 Klaxon 中自定义 JSON 文档和 Kotlin 对象之间映射的正确方法是 @Json
annotation:
data class QRResponse(
@Json(name = "qrType")
val qrType: String? = null,
@Json(name = "qrData")
val qrData: String? = null
)
【讨论】:
以上是关于Klaxon 解析 null的主要内容,如果未能解决你的问题,请参考以下文章
Android Kotlin + Klaxon - 解析 JSON 根数组
如何使用 Klaxon 解析嵌套 JSON 并在 recyclerview 中显示?
如何在 android studio 上使用 klaxon 从 thingspeak 解析 json 以获取字段值?