Привет Я пользуюсь простой библиотекой JSON. У меня есть JSON-файл, как это:JSON Simple - Кодирующий массив
[
"string",
{
...
},
{
...
}
...
]
У меня нет никаких проблем при разборе его. Но когда я заканчиваю свое приложение и пытаюсь сохранить изменения, я не могу добавить строку в новый JSONArray.
JSONArray array = new JSONArray();
array.add("string");
Это дает мне add(E) in ArrayList cannot be applied to (java.lang.String)
Ошибка.
В классе JSONArray нет метода put
.
Решение может преобразовывать JSONObject в JSONArray. Но как?
Или я могу разобрать файл и изменить его, а затем перезаписать исходный файл?
Посмотрите на примере 2-1
https://code.google.com/archive/p/json-simple/wikis/EncodingExamples.wiki
EDIT: Используя приведенный ниже код всегда выдает ошибку. Я считаю, что объект JSONArray не предназначен для кодирования. Вместо этого я использовал LinkedList.
JSONObject obj = new JSONObject();
JSONArray array = new JSONArray();
array.add("string"); // gives error
array.add(obj); // gives error
Вы должны использовать jsonObj вместо объектов String, чтобы проверить это [POST] (http://stackoverflow.com/questions/13963751/json-add-to-jsonarray-issue). – NAIT
@ NAIT No, все еще такой же проблема. функция добавления не работает. – ossobuko
Можете ли вы опубликовать то, что вы пробовали, пожалуйста? – NAIT