Actualmente estoy experimentando con el uso de JSON para la transferencia de datos de Internet. He tenido éxito al recibir una cadena JSON y convertirla en NSDictionary
, pero no he podido averiguar cómo convertir una matriz o diccionario de objetos en una representación JSON.Objective-C/iOS: conversión de una matriz de objetos a cadena JSON
He leído una serie de publicaciones y artículos que explican cómo crear un NSDictionary
de pares clave/valor y luego convertir a JSON, que funciona bien para una matriz simple, pero ¿cómo lograr esto cuando tienes una matriz o diccionario de objetos.
Así, por ejemplo, tengo una matriz de objetos "contacto", que Después me gustaría transformarse en una cadena JSON como tal:
"contacts":{
"contact":[
{
"id":"1"
"first_name":"john",
"last_name":"citizen",
"phone":"9999 9999"
}
{
"id":"1"
"first_name":"jane",
"last_name":"doe",
"phone":"8888 8888"
}
]
}
Tengo un NSMutableDictionary
que es rellenar una lista de contactos objetos:
NSMutableDictionary* contactsToBeSynced = [[NSMutableDictionary alloc] init];
//Populate dictionary with contact objects.
contactsToBeSynced = self.getNonSynchronisedData;
entonces tratar de transformar el diccionario de objetos con el método NSJSONSerialization
, pero falla con un error.
NSError* error;
NSString* jsonString;
NSData* jsonData = [NSJSONSerialization dataWithJSONObject:contactsToBeSynced options:NSJSONWritingPrettyPrinted error:&error];
jsonString = [[NSString alloc] initWithData:jsonData encoding:NSUTF8StringEncoding];
¿Alguien ha podido hacer esto con éxito? Agradecería mucho alguna ayuda o un punto en la dirección correcta. Aclamaciones.
¿Esto es para aprender o simplemente quieres hacer cosas? Porque hay alrededor de 5 buenas bibliotecas JSON para Objective-C. – user123444555621