Gson Map to Object
将Map
格式的JSON转换为相应的java / kotlin对象的最有效方法是什么?
现在我必须像这样使用它,这似乎是一个愚蠢的实现。
gson.fromJson(gson.toJson(mapToConvert), typeToken)
有什么建议么?
你可以使用JsonElement
:
val jsonElement = gson.toJsonTree(map) val foo = gson.fromJson(jsonElement, Foo::class.java)
您可以使用效用函数使其看起来更好:
inline fun Gson.fromMap(map: Map<*, *>) { return fromJson(toJsonTree(map, T::class.java) }
那么你可以这样调用它:
gson.fromMap(map)
- 如何在GSON中反序列化Kotlin代表
- Gson反序列化JSON。 java.lang.RuntimeException:无法调用具有根本原因的public com.derp.procedure.model.SkeletonElement(),无参数)
- 与gson的Kotlin parcelize问题
- Retrofit2标量转换器不转换之前gson转换器android
- Gson无法解析Kotlin中的字符串json格式数据
- 对Json TypeToken的EmptyClassBlock皮棉投诉
- 使用GSON进行Kotlin对象反序列化
- Gson与Kotlin嵌套的类
- GSON不能用自定义getter来反序列化Kotlin类