С этим связано много тем, но я не могу решить свою проблему.
Я получаю эту строку из синтаксического анализа итерации с помощью GSON.
Iterable<ParametrosProveedores> proveedoresList;
proveedoresList = proveedoresRepository.findAll(); //From spring repository
String jsonString = gson.toJson(proveedoresList);
Значение jsonString:
[{\"id\":1,\"proveedor\":\"CALIXTA\",\"unaVia\":true,\"dosVias\":true,\"plazasSi\":\"todas\",\"plazasNo\":\"\",\"turnoUnaVia\":false,\"turnoDosVias\":false},{\"id\":2,\"proveedor\":\"MOVILE\",\"unaVia\":true,\"dosVias\":true,\"plazasSi\":\"51,52\",\"plazasNo\":\"\",\"turnoUnaVia\":false,\"turnoDosVias\":false},{\"id\":3,\"proveedor\":\"TWILIO\",\"unaVia\":true,\"dosVias\":true,\"plazasSi\":\"todas\",\"plazasNo\":\"51\",\"turnoUnaVia\":false,\"turnoDosVias\":false},{\"id\":4,\"proveedor\":\"OTRO\",\"unaVia\":true,\"dosVias\":true,\"plazasSi\":\"todas\",\"plazasNo\":\"\",\"turnoUnaVia\":false,\"turnoDosVias\":false}]
Это массив json. Неужели нет способа выполнить синтаксический анализ этой строки без ручного удаления escape-символов?
Все, что я хочу сделать, это:
JSONArray jsonArray = parseFrom(jsonString);
Является ли это возможным?
ParametrosProveedores[] data = gson.fromJson(jElement, ParametrosProveedores[].class);jsonString.replace("\\", ""); заменит все экранированные символы ничем, я думаю, что лучше, чем вы сказали, делая это вручную
@scigs это то, что я имел в виду под вручную, я не хочу этого делать, но, похоже, я собираюсь к этому, поскольку никто другой не понял мою проблему.




Поскольку вы используете универсальный вариант в форме Iterable<T>, вам может потребоваться:
String jsonString = gson.toJson(proveedoresList, typeOfSrc);
Где typeOfSrc - это тип вашего proveedoresList. таким образом gson знает, как правильно сериализовать объект.
Gson.fromJson(String, Class)?