【问题标题】:How to deserialize Kotlin delegates in GSON如何在 GSON 中反序列化 Kotlin 代表
【发布时间】:2017-10-14 14:32:54
【问题描述】:

我有这门课:

class Project {
    val nameProperty = SimpleStringProperty("foobar")
    val name by nameProperty
}

我使用Fx-GSON 库来序列化JavaFx 属性。

当我将它序列化为 JSON 时,我得到了这个:

{
    "nameProperty": "foobar",
    "name$delegate": "foobar"
}

但是当我将它反序列化回 Project 类型的对象时,namenameProperty2 个不同的对象

如何将name 属性委托给新的nameProperty

【问题讨论】:

    标签: javafx gson kotlin


    【解决方案1】:

    您可以基于 GSON 的 ExclusionStrategy 构建一些东西,以从序列化中排除委托字段。通过检查 $delegate 字段后缀或使用 Kotlin 的反射。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-08-11
      • 1970-01-01
      • 1970-01-01
      • 2018-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多