Xcode, как NSLog JSON - PullRequest
       30

Xcode, как NSLog JSON

0 голосов
/ 17 августа 2011

Есть ли способ заставить NSLog распечатать весь файл JSON. Я сейчас говорю

NSString *deviceInfo = [NSString stringWithFormat:@"%@ %@",
                        [[UIDevice currentDevice]model], [[UIDevice currentDevice]systemVersion]];
NSDictionary *json = [deviceInfo JSONValue];
NSLog(@"json file = %@", json);

И это выводит на печать "json file = (null)"

Спасибо Клинтон

Ответы [ 2 ]

3 голосов
/ 17 августа 2011

Я думаю, вы не понимаете, для чего нужен JSON.Строка, которую вы передаете -JSONValue, не является допустимой строкой JSON, поэтому она возвращает nil.С тем же успехом вы можете просто составить словарь:

UIDevice *device = [UIDevice currentDevice];
NSDictionary *deviceInfo = [NSDictionary dictionaryWithObjectsAndKeys:[device model], @"deviceModel", [device systemVersion], @"deviceSystemVersion", nil];

Тогда, если вам нужно строковое представление объекта в формате JSON (например, для отправки на ваш сервер):

NSString *jsonDeviceInfo = [deviceInfo JSONRepresentation];
1 голос
/ 17 августа 2011

Вы уверены, что ваш код работает правильно? Ваш NSDictionary, кажется, ноль ...

Не могли бы вы опубликовать реализацию JSONValue?

Если объект не печатается должным образом, вы всегда можете переопределить метод -(NSString *) description через расширение, и он будет печатать так, как вы указали:)

...