Я не знаю, как я пропустил это в первый раз, но вы можете сделать это в Gson, используя JsonParser
:
JsonParser parser = new JsonParser();
JsonElement rootElement = parser.parse(reader);
Предыдущий ответ (нет необходимостисделать это)
Я не уверен, что у Gson есть какой-то более простой способ сделать это, но, похоже, это работает:
public enum JsonElementDeserializer implements JsonDeserializer<JsonElement> {
INSTANCE;
public JsonElement deserialize(
JsonElement json, Type typeOfT, JsonDeserializationContext context)
throws JsonParseException {
return json;
}
}
А потом:
Gson gson = new GsonBuilder().registerTypeAdapter(JsonElement.class,
JsonElementDeserializer.INSTANCE).create();
JsonElement rootElement = gson.fromJson(reader, JsonElement.class);