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

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

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

Json http парсинг. Массивы - Android

05.06.2014, 14:18. Просмотров 1189. Ответов 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 парсинг. Массивы
Посмотрите здесь:

Android Парсинг JSON'а
Android Парсинг большого объема JSON данных
Android Парсинг json, многомерный массив с разными типами данных
Android Парсинг JSON-файла
XML HTTP парсинг Android
Android Осуществить парсинг JSON с помощью готового макета "VKApiMessage"
Парсинг JSON ответа от сервера Android
Android Парсинг json
Android Парсинг JSON
Парсинг JSON объекта Android
Парсинг Json Android
JSON. HTTP. Подключение к локальной БД Android

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
YuraAAA
1564 / 1306 / 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
1564 / 1306 / 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 парсинг. Массивы
Ответ Создать тему
Опции темы

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