gson 如何在使用toJson方法将类转换为sting后设置上面的一些属性

omtl5h9j  于 2022-11-23  发布在  其他
关注(0)|答案(1)|浏览(205)

我正在进行序列化Gson().toJson(objOfClass).但是我需要在DEVAWSEP之前设置SEQ,& SRC属性,那么我该如何设置它呢?

{"state":{"desired":{"ACT":1,"DEVAWSEP":"xxxxxxxxx","SEQ":6048799,"SRC":"MA"}}}

我要这张表格

{"state":{"desired":{"ACT":1,"SEQ":6048799,"SRC":"MA","DEVAWSEP":"xxxxxxxxx"}}}

所以我想不按字母顺序进行序列化

我正在使用这个图书馆。

dependencies {
  implementation 'com.google.code.gson:gson:2.8.6'
}
k5hmc34c

k5hmc34c1#

我是通过编写一个如下手动JsonSerializer来实现这一点的。

class DesiredSerializer : JsonSerializer<Desired> {
    override fun serialize(
        desired: Desired?,
        typeOfSrc: Type?,
        context: JsonSerializationContext?,
    ): JsonElement {
        var o: JsonObject = JsonObject()
        o.add("ACT", context?.serialize(desired?.ACT))
        return o
    }
 }

相关问题