Форум программистов, компьютерный форум, киберфорум
Java для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 06.11.2021
Сообщений: 80

Parsing JSON/XML

13.02.2022, 23:37. Показов 1278. Ответов 2

Студворк — интернет-сервис помощи студентам
Здравствуйте! Обращаюсь с просьбой о помощи!
дано задание:
• Реализовать парсинг JSON файла и преобразовать полученный
результат в XML файл:
• 1) Посмотреть структуру файла cars.json и создать сущность Car в
соответствии со структурой документа
• 2) Написать свою реализацию парсинга json файла и маппинг полученного
результат на сущность Car
• 3) Написать метод который будет принимать список автомобилей List<Car>
cars, фильтровать автомобили у который есть поле location и сохранить
результат в файл carsWithLocation.xml

Проблема в тому что не получается нормально прочитать файл(запарсить) и тем более
отфильтровать автомобили у который есть поле location и сохранить
результат в файл carsWithLocation.xml;
Класс Car и Location созданы!

файл cars.json:

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
"name": "chevrolet chevelle concours (sw)",
    "miles_per_Gallon": null,
    "cylinders": 8,
    "displacement": 350,
    "horsepower": 165,
    "year": "1970-01-01",
    "origin": "USA"
  },
  {
    "name": "ford torino (sw)",
    "miles_per_Gallon": null,
    "cylinders": 8,
    "displacement": 351,
    "horsepower": 153,
    "year": "1970-01-01",
    "origin": "USA",
    "location": {
      "country": "Canada",
      "city": "Toronto",
      "street": "12 Avenue",
      "house": 22
    }
  },
  {
    "name": "plymouth satellite (sw)",
    "miles_per_Gallon": null,
    "cylinders": 8,
    "displacement": 383,
    "horsepower": 175,
    "year": "1970-01-01",
    "origin": "USA"
  },
  {
    "name": "amc rebel sst (sw)",
    "miles_per_Gallon": null,
    "cylinders": 8,
    "displacement": 360,
    "horsepower": 175,
    "year": "1970-01-01",
    "origin": "USA",
    "location": {
      "country": "USA",
      "city": "Washington",
      "street": "12 Main street",
      "house": 2
    }
и класс для парсинга который выдает такое в консоли после проверки:

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
public class JSONCarParser {
 
    public void parseCar(String path) {
        try {
            Reader reader = new FileReader(path);
            Type listType = new TypeToken<ArrayList<Car>>(){}.getType();
            List<Car> carList = new Gson().fromJson(reader,listType);
 
            carList.forEach(System.out::println);
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        }
    }
}
метод:

Java
1
2
3
4
 private static void jsonCarsParser() {
        JSONCarParser jsonCarParser = new JSONCarParser();
        jsonCarParser.parseCar("src/main/resources/cars.json");
    }
Output:

homework18.car.Car@3f102e87
homework18.car.Car@27abe2cd
homework18.car.Car@5f5a92bb
homework18.car.Car@6fdb1f78

Помогите люди кто сможет, пожалуйста!
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
13.02.2022, 23:37
Ответы с готовыми решениями:

IOException parsing XML document from class path resource [src/resources/app-context.xml]; nested exception is
public class HelloWorldSpringDI { public static void main(String args) { ApplicationContext ctx = new...

Parsing with JSON
Всем привет, подскажите, как правильно парсить файл json, если имеется условие потока данных: имею в виду, ответ имеет вид { ...

Error with parsing json
Есть код private static void parseJSON(JsonParser jsonParser, Response resp, Result res) throws JsonParseException, IOException { ...

2
Эксперт Java
3639 / 2971 / 918
Регистрация: 05.07.2013
Сообщений: 14,220
13.02.2022, 23:49
т.е. что такое gson ты знаешь, а что такое toString- нет? рекомендую пересмотреть подход к изучению языка, или лучше на повара иди учись
0
0 / 0 / 0
Регистрация: 06.11.2021
Сообщений: 80
14.02.2022, 00:34  [ТС]
Знаю я что такое toString!И знаю про Gson и Json, но не переходит это в нормальный код, в смысле в читаемый файл в консоль, пробовал с похожим так делать, все читало, а здесь не хочет!!!

Добавлено через 20 минут
Разобрался с выводом, работал через ломбок и не вставил toString в нем,но осталась проблема в том, как вывести строки в созданный XML файл с полями у которых есть location...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
14.02.2022, 00:34
Помогаю со студенческими работами здесь

Xml parsing
я сделал запрос URL url; try { url = new URL(&quot;https://api.privatbank.ua/p24api/pubinfo?exchange&amp;coursid=3&quot;); ...

DOM Parsing(XML)
Есть такой xml &lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt; &lt;person_list&gt; &lt;person&gt; &lt;name&gt;Inna&lt;/name&gt; &lt;age&gt;24&lt;/age&gt;...

Вытягивание json,xml элементов с сторонних ресурсов
Дали задание, получить список товаров с другого сайта и тд. (главный вопрос как получить эти объекты если API не дает прямой ссылки на json...

Apache cxf jax-rs json + xml как привести к нужному типу
import javax.jws.WebService; import javax.jws.soap.SOAPBinding; import javax.jws.soap.SOAPBinding.ParameterStyle; import...

Java, JSON и JSON Simple. Непонятка с созданием объекта JSON на сервере для отправки на фронт
Здравствуйте. Разрабатываю интернет-магазин на Java. Мне нужно на фронте получить список товаров из базы данных для отображения на...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru