Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.78
dimashirokov
3 / 3 / 2
Регистрация: 16.05.2014
Сообщений: 80
#1

Json http парсинг. Массивы - Программирование Android

05.06.2014, 14:18. Просмотров 1216. Ответов 3
Метки нет (Все метки)

Здравствуйте. Нужно спарсить json данные. Есть php файл, который генерирует json код: http://silicon-valley-rus.com/server/get_json.php
Листинг пхп файла:
......
PHP
1
2
3
4
5
6
7
8
$var = array();
 $sql = "SELECT * FROM chat";
$result = mysqli_query($con, $sql);
 
while($obj = mysqli_fetch_object($result)) {
$var[] = $obj;
}
echo '{"messages":'.json_encode($var).'}';
Планируется обращаться к json так: массив.идентификатор, как это можна реализовать под андроид(парсить просто ключ-значение получается, а обращаться к массиву - нет)?
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.06.2014, 14:18     Json http парсинг. Массивы
Посмотрите здесь:

Парсинг Json - Программирование Android
Здравствуйте подcкажите как сделать: нужно данные из Json засунуть в массив, чтобы его дальше передавать по активностям. Json парсится в...

Парсинг json - Программирование Android
Здравствуйте! Имеется такой json код: { "data": }И я его обрабатываю так: JSONArray urls = json.getJSONArray("data"); Тогда, как мне...

Парсинг JSON - Программирование Android
Привет знатокам своего дела, у меня уже крик души! Какой час не выходит распарсить такой JSON ...

Парсинг JSON - Программирование Android
Доброй ночи! Есть задача распарсить JSON не зная изначально сколько и чего там находится, а так же не зная ни имен ни другой инфы, кроме...

Парсинг JSON - Программирование Android
Дали задание Мне надо воссоздать структуру JSON в сообственных объектах. Т.е. парсить надо не в String (например), а сделать вот что: -...

Парсинг JSON'а - Программирование Android
Здравствуйте! Недавно я на php+msql и Eclipse пробовал этот пример с сайта...

JSON. HTTP. Подключение к локальной БД - Программирование Android
Ребят, нужен совет. Работаю над клиент-сервером, сначала разбирался с коннектом к БД с помощью библиотека JDBC, у меня получилось. Нашел в...

Парсинг JSON объекта - Программирование Android
Здравствуйте, программисты! Помогите, пожалуйста, с решением задачи: Есть json-объект такого вида: {"map": {"firstname": null,...

Парсинг JSON-файла - Программирование Android
Есть файл со следующим содержимым: т.е. только со значениями! Как его распарсить?? Этот способ не работает: void...

XML HTTP парсинг - Программирование Android
Здравствуйте. На сервере есть тестовый php файл с сontent-type: text/xml. Он выводит сообщения с базы....

Парсинг JSON ответа от сервера - Программирование Android
Здравствуйте друзья, давно не заходил к вам в гости. Столкнулся с таким интересным (интересно построенным) ответом от сервера в формате...

Парсинг большого объема JSON данных - Программирование Android
Столкнулся со следующей проблемой. С сервера приходит большой объем JSON данных (несколько мб), и когда я пытаюсь преобразовать полученные...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
YuraAAA
1566 / 1308 / 269
Регистрация: 25.10.2009
Сообщений: 3,424
Записей в блоге: 2
05.06.2014, 14:28     Json http парсинг. Массивы #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
dimashirokov,
Java
1
2
3
4
5
6
7
8
JSONObject data = new JSONObject(your_response);
JSONArray usersArray = data.getJSONArray("users");
for (int i = 0; i < usersArray.length(); i++ ){
JSONObject currentUser = usersArray.getJSONObject(i);
currentUser.getString("id"); //ID
currentUser.getString("name");
currentUser.getString("password");
}
советую шифровать парои
dimashirokov
3 / 3 / 2
Регистрация: 16.05.2014
Сообщений: 80
05.06.2014, 14:53  [ТС]     Json http парсинг. Массивы #3
YuraAAA, смотрите, есть код:
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
@Override
  protected Void doInBackground(Void... params) {
   
         JSONObject json = null;
         
         HttpResponse response;
         HttpClient myClient = new DefaultHttpClient();
         HttpPost myConnection = new HttpPost("http://silicon-valley-rus.com/server/get_messages.php");
          
         try {
             response = myClient.execute(myConnection);
             str = EntityUtils.toString(response.getEntity(), "UTF-8");
              
         } catch (ClientProtocolException e) {
             e.printStackTrace();
         } catch (IOException e) {
             e.printStackTrace();
         }
          
          
         try{
             JSONArray jArray = new JSONArray(str);
             json = jArray.getJSONObject(0);
             
            
             z = json.getString("messages");
             
             
              
              
         } catch ( JSONException e) {
             e.printStackTrace();                
         }       
          
   
   return null;
  }
он обрабатывает все данные в json как массив. А что если внутри данных json, кроме данных, массивы, например:
JSON
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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
[
    {
        "id": "0001",
        "type": "donut",
        "name": "Cake",
        "ppu": 0.55,
        "batters":
            {
                "batter":
                    [
                        { "id": "1001", "type": "Regular" },
                        { "id": "1002", "type": "Chocolate" },
                        { "id": "1003", "type": "Blueberry" },
                        { "id": "1004", "type": "Devil's Food" }
                    ]
            },
        "topping":
            [
                { "id": "5001", "type": "None" },
                { "id": "5002", "type": "Glazed" },
                { "id": "5005", "type": "Sugar" },
                { "id": "5007", "type": "Powdered Sugar" },
                { "id": "5006", "type": "Chocolate with Sprinkles" },
                { "id": "5003", "type": "Chocolate" },
                { "id": "5004", "type": "Maple" }
            ]
    },
    {
        "id": "0002",
        "type": "donut",
        "name": "Raised",
        "ppu": 0.55,
        "batters":
            {
                "batter":
                    [
                        { "id": "1001", "type": "Regular" }
                    ]
            },
        "topping":
            [
                { "id": "5001", "type": "None" },
                { "id": "5002", "type": "Glazed" },
                { "id": "5005", "type": "Sugar" },
                { "id": "5003", "type": "Chocolate" },
                { "id": "5004", "type": "Maple" }
            ]
    },
    {
        "id": "0003",
        "type": "donut",
        "name": "Old Fashioned",
        "ppu": 0.55,
        "batters":
            {
                "batter":
                    [
                        { "id": "1001", "type": "Regular" },
                        { "id": "1002", "type": "Chocolate" }
                    ]
            },
        "topping":
            [
                { "id": "5001", "type": "None" },
                { "id": "5002", "type": "Glazed" },
                { "id": "5003", "type": "Chocolate" },
                { "id": "5004", "type": "Maple" }
            ]
    }
]
YuraAAA
1566 / 1308 / 269
Регистрация: 25.10.2009
Сообщений: 3,424
Записей в блоге: 2
05.06.2014, 15:02     Json http парсинг. Массивы #4
JSONArray batterArray = data.getJSONArray("batter");
итд
Yandex
Объявления
05.06.2014, 15:02     Json http парсинг. Массивы
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru