В настоящее время я экспериментирую с использованием JSON для передачи данных через Интернет. Я успешно получил строку JSON и преобразовал ее в NSDictionary
, но не смог понять, как преобразовать массив или словарь объектов в представление JSON.
Я прочитал ряд постов и статей, в которых объясняется, как создать NSDictionary
пар ключ / значение, а затем преобразовать в JSON, что прекрасно работает для простого массива, но как этого добиться, если у вас есть массив или словарь объектов.
Так, например, у меня есть массив объектов "contact", который я бы затем хотел преобразовать в строку JSON следующим образом:
"contacts":{
"contact":[
{
"id":"1"
"first_name":"john",
"last_name":"citizen",
"phone":"9999 9999"
}
{
"id":"1"
"first_name":"jane",
"last_name":"doe",
"phone":"8888 8888"
}
]
}
У меня есть NSMutableDictionary
, который заполняет список контактных объектов:
NSMutableDictionary* contactsToBeSynced = [[NSMutableDictionary alloc] init];
//Populate dictionary with contact objects.
contactsToBeSynced = self.getNonSynchronisedData;
Затем я пытаюсь преобразовать словарь объектов с помощью метода NSJSONSerialization
, но он завершается ошибкой.
NSError* error;
NSString* jsonString;
NSData* jsonData = [NSJSONSerialization dataWithJSONObject:contactsToBeSynced options:NSJSONWritingPrettyPrinted error:&error];
jsonString = [[NSString alloc] initWithData:jsonData encoding:NSUTF8StringEncoding];
Кто-нибудь смог успешно сделать это? Был бы очень признателен за помощь или точку в правильном направлении. Приветствия.