#java #json
Вопрос:
Файл JSON: [
{
«имя»:»Джон», «город»:»Берлин», «работа»:»Учитель» }, {
«имя»:»Марк», «город»:»Осло», «работа»:»Доктор» } ]
Синтаксический анализатор JsonParser = новый синтаксический анализатор json(); JSONArray a = (JSONArray) синтаксический анализатор.разбор(новый файловый редактор(«F:file.json»));
for (Object o : a) {
JSONObject person = (JSONObject) o;
String name = (String) person.get("name");
if (name.equalsIgnoreCase("john")) {
String name1 = (String) person.get("name");
System.out.println("name1" name1);
String city1 = (String) person.get("city");
System.out.println("city1" city1);
String job1 = (String) person.get("job");
System.out.println("job1" job1);
person.put("city", "BLR");
String city2 = (String) person.get("city");
System.out.println("city2" city2);
}
}
Значения не обновляются во внешнем файле Json
Комментарии:
1. Сохраните файл json, чтобы он обновился, вы просто изменили значение объекта, которого нет в локальном файле
Ответ №1:
JSONObject-это представление json, которое не ссылается на исходный файл. Чтобы переписать файл, вам нужно изменить значения person
и записать его в файл.
person.put("city", "BLR");
String jsonString = person.toString();
// write jsonString to file