Как конвертировать карту в JSON с помощью Moshi
Я пытаюсь конвертировать Map в JSON, используя Moshi, но я не мог найти какую-либо помощь.
val attentionNumbepAdapter: JsonAdapter<Map<String, Employee>> = moshi
.adapter(Types.newParameterizedType(Map::class.java, String::class.java, Employee::class.java))
но это дает IllegalArgumentException
, Есть идеи, как правильно подойти к этой проблеме?
0 ответов
Наверное, немного поздно с ответом, но все же он здесь.
Пример метода преобразования карты в Json с использованием moshi:
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);
Надеюсь, это поможет.