Foros del Web » Programación para mayores de 30 ;) » Programación móvil »

recorrer JSON complejo

Estas en el tema de recorrer JSON complejo en el foro de Programación móvil en Foros del Web. Hola a todos: Estoy desarrollando una aplicación para iPhone, en la cual tengo que recorrer un JSON complejo, pero no sé cómo hacerlo. En algunos ...
  #1 (permalink)  
Antiguo 02/04/2012, 08:23
Avatar de chilenozzz  
Fecha de Ingreso: junio-2004
Ubicación: Chile
Mensajes: 44
Antigüedad: 19 años, 9 meses
Puntos: 1
recorrer JSON complejo

Hola a todos:

Estoy desarrollando una aplicación para iPhone, en la cual tengo que recorrer un JSON complejo, pero no sé cómo hacerlo. En algunos foros que he visto dicen que no es suficiente con la librería JSON de Google, y hay que hacer más, pero como no entiendo mucho el inglés, me ha costado encontrar una solución.

Hasta el momento puedo mostrar correctamente el JSON completo, pero mi dificultad ahora es poder recorrerlo, para poder llenar unos datos que finalmente deberán mostrarse en gráficos.

Estoy almacenando el JSON de la siguiente forma:

Código:
SBJSON *parser = [[SBJSON alloc] init];
NSArray *resultado = [parser objectWithString:soapResults error:nil];
Luego puedo mostrarlo de la siguiente forma:

Código:
        for (NSDictionary *item in resultado){
            NSLog(@"valores \"%@\" para \"%@\"",item, [resultado objectForKey:item]);            
        }
El JSON es el siguiente (no pude copiarlo completo por ser muy largo):

Código HTML:
{
  "datosHVN": [
    {
      "camposFechaCaptura": [
        2012,
        3,
        30,
        12,
        5,
        32
      ],
      "datos": [
        {
          "hora": "12:30",
          "valores": [
            20
          ]
        },
        {
          "hora": "12:00",
          "valores": [
            17
          ]
        },
        {
          "hora": "11:30",
          "valores": [
            24
          ]
        },
        {
          "hora": "11:00",
          "valores": [
            24
          ]
        },
        {
          "hora": "10:30",
          "valores": [
            24
          ]
        },
        {
          "hora": "10:00",
          "valores": [
            23
          ]
        }
      ],
      "fechaCapturaStr": "30-03-2012 12:05",
      "nivel": 60
    },
    {
      "camposFechaCaptura": [
        2012,
        3,
        30,
        12,
        5,
        32
      ],
      "datos": [
        {
          "hora": "12:30",
          "valores": [
            5
          ]
        },
        {
          "hora": "12:00",
          "valores": [
            4
          ]
        },
        {
          "hora": "11:30",
          "valores": [
            4
          ]
        },
        {
          "hora": "11:00",
          "valores": [
            5
          ]
        },
        {
          "hora": "10:30",
          "valores": [
            6
          ]
        },
        {
          "hora": "10:00",
          "valores": [
            5
          ]
        }
      ],
      "fechaCapturaStr": "30-03-2012 12:05",
      "nivel": 61
    },
    {
      "camposFechaCaptura": [
        2012,
        3,
        30,
        12,
        5,
        32
      ],
      "datos": [
        {
          "hora": "12:30",
          "valores": [
            4
          ]
        },
        {
          "hora": "12:00",
          "valores": [
            4
          ]
        },
        {
          "hora": "11:30",
          "valores": [
            5
          ]
        },
        {
          "hora": "11:00",
          "valores": [
            3
          ]
        },
        {
          "hora": "10:30",
          "valores": [
            4
          ]
        },
        {
          "hora": "10:00",
          "valores": [
            5
          ]
        }
      ],
      "fechaCapturaStr": "30-03-2012 12:05",
      "nivel": 62
    },
    {
      "camposFechaCaptura": [
        2012,
        3,
        30,
        12,
        5,
        32
      ],
      "datos": [
        {
          "hora": "12:30",
          "valores": [
            4
          ]
        },
        {
          "hora": "12:00",
          "valores": [
            3
          ]
        },
        {
          "hora": "11:30",
          "valores": [
            4
          ]
        },
        {
          "hora": "11:00",
          "valores": [
            3
          ]
        },
        {
          "hora": "10:30",
          "valores": [
            4
          ]
        },
        {
          "hora": "10:00",
          "valores": [
            4
          ]
        }
      ],
      "fechaCapturaStr": "30-03-2012 12:05",
      "nivel": 63
    },
    {
      "camposFechaCaptura": [
        2012,
        3,
        30,
        12,
        5,
        32
      ],
      "datos": [
        {
          "hora": "12:30",
          "valores": [
            1
          ]
        },
        {
          "hora": "12:00",
          "valores": [
            0
          ]
        },
        {
          "hora": "11:30",
          "valores": [
            3
          ]
        },
        {
          "hora": "11:00",
          "valores": [
            5
          ]
        },
        {
          "hora": "10:30",
          "valores": [
            4
          ]
        },
        {
          "hora": "10:00",
          "valores": [
            4
          ]
        }
      ],
      "fechaCapturaStr": "30-03-2012 12:05",
      "nivel": 64
    },
    {
      "camposFechaCaptura": [
        2012,
        3,
        30,
        12,
        5,
        32
      ],
      "datos": [
        {
          "hora": "12:30",
          "valores": [
            2
          ]
        },
        {
          "hora": "12:00",
          "valores": [
            2
          ]
        },
        {
          "hora": "11:30",
          "valores": [
            1
          ]
        },
        {
          "hora": "11:00",
          "valores": [
            2
          ]
        },
        {
          "hora": "10:30",
          "valores": [
            2
          ]
        },
        {
          "hora": "10:00",
          "valores": [
            1
          ]
        }
      ],
      "fechaCapturaStr": "30-03-2012 12:05",
      "nivel": 65
    },
    {
      "camposFechaCaptura": [
        2012,
        3,
        30,
        12,
        5,
        32
      ]
...
Ojalá alguien pueda echarme una mano!!

Saludos y gracias!

Etiquetas: complejo, ios, iphone, json, objective-c, xcode
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:43.