2013-02-13 2 views
2

Как сменить NSDictionary на NSString который содержит JSON из NSDictionary? Я попытался как, но без успехаКак преобразовать NSDictionary в NSString, который содержит json из NSDictionary?

//parameters is NSDictionary 
    NSData *jsonData = [NSJSONSerialization dataWithJSONObject:parameters 
                 options:0 
                 error:&error]; 
+0

В чем проблема? Вы хотите знать, как сделать NSString из NSData? – 2013-02-13 22:07:11

ответ

5

если jsonData является NSDictionary

NSString *str=[NSString stringWithFormat:@"json data is %@", jsonData]; 

ИЛИ если jsonData является NSData

NSString *str = [[NSString alloc] initWithData:jsonData encoding:NSASCIIStringEncoding]; 
+1

Вы уверены? В большинстве случаев описание NSData не подходит. – Kekoa

+0

Я уверен, что это путь! – nsgulliver

+1

Хорошее редактирование. Первоначально я бы подумал, что jsonData относится к переменной OP, которая является NSData. Но вы поняли, что вы имели в виду. Хотя просто печать NSDictionary не выводит JSON, он по-прежнему полезен – Kekoa

4

Если вы просто хотите, чтобы проверить это, вы можете создать NSString:

NSString *string = [[NSString alloc] initWithData:jsonData 
             encoding:NSUTF8StringEncoding]; 

Но если вы пишете его в файл или отправляете на сервер, вы можете просто использовать свой NSData. Вышеприведенная конструкция полезна для изучения значения для целей отладки.