2

这感觉像是一个超级新手问题,所以提前道歉。

使用 NSJSONSerialization 时如何指定布尔值?

我当前的代码如下:

NSDictionary *parameters = [NSDictionary dictionaryWithObjectsAndKeys: 
                            value, @"key",
                            NO, @"booleanKey",
                            nil];

NSData *jsondata = [NSJSONSerialization dataWithJSONObject:parameters options:0 error:nil];

NSString *jsonString = [[NSString alloc] initWithData:jsondata encoding:NSUTF8StringEncoding];

它似乎只是忽略了它,并且 NSLog 输出看起来像:

{"key":"THE VALUE OF id value"}
4

2 回答 2

3

它被忽略的原因NO是与 相同nil,它会终止您的字典列表。您只能将对象添加到字典中,从而将任何原始类型转换为对象。例如:NO转向[NSNumber numberWithBool:NO]或者如果您使用的是 Xcode 4.4,您可以只使用@(NO).

于 2012-07-03T20:16:00.027 回答
0

尝试:

[NSNumber numberWithBool: NO]

而是直接使用 bool 值。

你可以在这里查看文档。

于 2012-07-03T20:09:02.690 回答