Предполагая, что мне нужно проанализировать огромный список Item
s из json файла активов в Android в формате, подобном приведенному ниже:
[
{
"id": 1,
"name: "Tom"
// other stuff to describe "Item"
}
]
По соображениям производительности я хочу избежать преобразование всего файла в один String
и анализ его с помощью moshi
. Вместо этого я хочу использовать stream и анализировать каждый элемент с json до Item
и самостоятельно создавать список элементов. С gson
я думаю, что это можно сделать так:
Gson gson = new GsonBuilder().create();
List<Item> items = new ArrayList<>();
// Read file in stream mode
try (JsonReader reader = new JsonReader(in)) {
reader.beginArray();
while (reader.hasNext()) {
// Read data into object model
Item item = gson.fromJson(reader, Item.class);
items.add(item);
}
} catch ...
}
Я долго искал, но не смог найти эквивалентный способ Моши для этого. Любой совет?
Спасибо