С Новым годом! Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/9: Рейтинг темы: голосов - 9, средняя оценка - 5.00
0 / 0 / 1
Регистрация: 13.11.2014
Сообщений: 72

JSON.simple Java

20.08.2015, 04:59. Показов 1965. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет. Вот разбираюсь с json и столкнулся с проблемой перебора, опять же, ранее использовал json в as3 и php, но в jave всё совсем не так, как там)
Есть массив такого вида
JSON
1
{"exp": 20,"drop":{"id":1,"min": 1, "max": 2, "chance":1},{"id":2,"min": 1, "max": 2, "chance":1}}
Я его парсю
Java
1
2
3
4
5
6
7
8
9
JSONParser parser = new JSONParser();
         try {
                Object obj = parser.parse(info);
                jsonObj = (JSONObject) obj;
                //System.out.println(jsonObj.get("type"));
            } catch (ParseException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
В итоге к ключам можно обращаться таким образом
Java
1
2
System.out.println(jsonObj.get("exp"));
System.out.println(jsonObj.get("drop"));
Вроде бы всё нормально, но как мне теперь перебрать массивы ключа "drop"? foreach как такового в jave нету, есть, но выглядит иначе и не совсем то что нужно. Суть в том, что мне надо перебрать все массивы ключа drop, то есть получить значение id:1, id:2, а также остальные ключи, по элементам, то есть вид должен быть такой
drop[0].id = 1;
drop[1].id = 2;
И т.д. Смотрел что надо как-то через JSONArrayList это дело прогонять, но я находил информацию только в библиотеке
org.json.JSONArray; то есть без simple, а это судя по всему совершенно другая библиотека. Подскажите кому не сложно, что-то пока не могу догадаться, как все же реализовать перебор.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
20.08.2015, 04:59
Ответы с готовыми решениями:

Парсинг JSON в JSON Linked Data с использованием Hydra Java
Есть веб страница, на которой пользователь заполняет поля, жмет на кнопку и затем данные отправляются на сервер. На сервере работает...

И снова Java + JSON
Доброго времени суток. Есть сервер с базой данных и PHP скриптом (API). И есть клиент, написанный на Java. Клиентская часть состоит из...

Как добавить к проекту в IntelliJ библиотеку JSON-java?
Пробую добавить к проекту библиотеку через окно Project Structure. Что пробовал: Скачивал все .java файлы из репозитория, потом...

9
636 / 528 / 165
Регистрация: 01.04.2010
Сообщений: 1,843
20.08.2015, 06:29
Java
1
(JSONArray)jsonObj.get("drop");
Выкинь этот бред и используй нормальные библиотеки: gson или jackson.
1
20.08.2015, 09:04

Не по теме:

Цитата Сообщение от Godwarlock Посмотреть сообщение
foreach как такового в jave нету
не и совсем по теме, но мне кажется, что foreach таки есть

0
0 / 0 / 1
Регистрация: 13.11.2014
Сообщений: 72
20.08.2015, 18:19  [ТС]
aleksandy, почему бред? Чем она плоха?

Добавлено через 1 час 32 минуты
В общем разобрался. Поискал еще в гугле и всё таки наткнулся на то что нужно.
0
636 / 528 / 165
Регистрация: 01.04.2010
Сообщений: 1,843
20.08.2015, 18:32
Всем.

У тебя, кстати, json невалидный.
0
0 / 0 / 1
Регистрация: 13.11.2014
Сообщений: 72
20.08.2015, 18:56  [ТС]
aleksandy, Если бы я знал до момента, что это не так, то наверно тему не создавал) Потому что я вчера вроде делал всё правильно, но никаких ошибок, собственно как и результата не было. А вот буквально час назад, я решил вновь запустить проект и тут бац откуда не возьмись(причем я ничего не менял) стали выпрыгивать ошибки. Минут 15 побившись с причиной, понял что да, json был неправильный и когда я его переписал, как в прочем и подправил код внутри Java всё заработало.
А так, для уточнения, мне бессмысленно кидать ссылки на англ. сайты, поэтому большинство ваших ответов мне никак не помогает. Технический английский я еще может быть да разжую, но целое описание, публикацию, для меня на данный момент непосильный труд)
0
Эксперт Java
 Аватар для KEKCoGEN
2399 / 2224 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
20.08.2015, 21:16
Цитата Сообщение от Godwarlock Посмотреть сообщение
А так, для уточнения, мне бессмысленно кидать ссылки на англ. сайты
и все конечно об этом знают т.к курсы экстрасенсов закончили на отлично.
0
636 / 528 / 165
Регистрация: 01.04.2010
Сообщений: 1,843
21.08.2015, 06:31
Умение читать хотя бы с гуглопереводчиком - это обязательное умение, отсутствие которого даже не подразумевается. После таких заявлений вести какой-то диалог бессмысленно, т.к. человеку просто не место в профессии.
1
0 / 0 / 1
Регистрация: 13.11.2014
Сообщений: 72
21.08.2015, 18:37  [ТС]
aleksandy, Гугл переводчик? Он искажает вообще всё понятие, которое переводит.
0
 Аватар для ne2win
206 / 206 / 71
Регистрация: 25.02.2014
Сообщений: 569
21.08.2015, 18:46
Godwarlock, нужно слова непонятные переводить а не статью
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
21.08.2015, 18:46
Помогаю со студенческими работами здесь

Конвертер (сериализатор) JSON -> JSON Linked Data
Подскажите, пожалуйста, какую-нибудь хорошую библиотеку на java, которая позволяет конвертировать данные формата JSON в данные в формате...

Тест NIO (simple code)
Здравствуйте. Решил сделать тест nio на задержку канала и получил неожиданные результаты. ...

Какую версию Java поддерживает .Net Java# И какую VS6.0 Java++ ?
Какую версию Java поддерживает .Net Java# И какую VS6.0 Java++ ? Ответье, плиз, новичку, по MSDN я не понятно, это исключительно...

Error:(10, 42) java: incompatible types: int cannot be converted to java.math.BigDecimal
import java.math.*; import java.util.Scanner; public class Factorial { public static void main(String args) { Scanner...

Посоветуйте примеры кода по Java. Теория прочтена, но с языком Java не знакома
Или может кто может дать готовый код. В теории вроде бы не очень сложно. :cry: 1.Напишите процедуру, которая по заданному сообщению...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её. Последовательность действий:. . .
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru