【问题标题】:How to convert map into json using Moshi如何使用 Moshi 将地图转换为 json
【发布时间】:2019-02-05 07:08:46
【问题描述】:

我正在尝试使用 moshi 将 Map 转换为 json,但我找不到任何帮助。

 val attentionNumbepAdapter: JsonAdapter<Map<String, Employee>> = moshi
                .adapter(Types.newParameterizedType(Map::class.java, String::class.java, Employee::class.java))

但它给出了IllegalArgumentException。知道如何正确解决这个问题吗?

【问题讨论】:

  • 发布异常消息和堆栈跟踪。

标签: java json hashmap moshi


【解决方案1】:

答案可能有点晚了,还是在这里。

使用 moshi 将 Map 转换为 Json 的示例方法:

  private <K, V> String objectsMapToJson(Class<K> key, Class<V> value, Object json) {
    return moshi()
        .adapter(Types.newParameterizedType(Map.class, key, value))
        .toJson(json);
  }

用法:

      Map<String, Employee> employeeMap = new HashMap<>();

      //populate map with some data

      String json = objectsMapToJson(String.class, Employee.class, employeeMap);

希望对你有帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-02-24
    • 1970-01-01
    • 1970-01-01
    • 2010-10-01
    • 2017-02-14
    • 2017-03-22
    • 1970-01-01
    • 2022-01-03
    相关资源
    最近更新 更多