美化NSArray和NSDictionary的NSLog

我正在处理深层嵌套NSArray和NSDictionary的,至less说是非常耗时的。 [数据objectatindex:0] valueForKey:@“blah”]等等

有谁知道一个很好的iOS类别recursionlogging结构,突出显示types和显示值?

可能会问一点,但你永远不知道:)

也许这样?

for (id key in dictionary) { NSLog(@"key: %@, value: %@ \n", key, [dictionary objectForKey:key]); } 

但我想不出有什么好办法得到输出美丽,除了复制和粘贴到一个jsonFormatter (例如)

编辑 :@Andrey Starodubtsev有XCode> 5.x下面的解决scheme:

 NSLog( @"%@", dictionaryYouWantToPrint ); 

嗯。 简单

 NSLog( @"%@", dictionaryYouWantToPrint ); 

输出以下结果给我:

 { id = 1; matchCount = 0; matchPattern = abcdef; number = "123456"; sessionID = 5; status = Unknown; timerStart = 1367229348; } 

也许你可以在iOS5之后使用block,比如

 [anArray enumerateObjectsUsingBlock:^(id object, NSUInteger index, BOOL *stop) { NSLog (@"object->%@",object); }]; [aDictionary enumerateKeysAndObjectsUsingBlock:^(id key, id object, BOOL *stop){ NSLog(@"key->%@, value-> %@",key,object); }]; 

这将打印在没有NSLog的控制台上。

在debugging过程中,当断点位于字典下方时,可以input控制台

 NSDictionary * myDict = ...; 

宝myDict

你会在控制台上打印字典。

您甚至可以在控制台中将对象转换为其他types:

在这里输入图像说明