Предполагая, что мне нужно проанализировать огромный список Item
s из файла ресурсов json в Android с форматом, подобным приведенному ниже:
[
{
"id": 1,
"name: "Tom"
// other stuff to describe "Item"
}
]
По соображениям производительности я не хочу преобразовывать весь файл в один String
и анализировать его с помощью moshi
. Вместо этого я хочу использовать поток и анализировать каждый элемент от 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 ...
}
Я искал какое-то время, но не смог найти эквивалент Моши для этого. Любой совет?
Спасибо