打印可读字典及数组
Posted dawn_wdf
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了打印可读字典及数组相关的知识,希望对你有一定的参考价值。
@implementation NSArray (Log) - (NSString *)descriptionWithLocale:(id)locale indent:(NSUInteger)level { NSMutableString *mStr = [NSMutableString string]; NSMutableString *tab = [NSMutableString stringWithString:@""]; for (int i = 0; i < level; i++) { [tab appendString:@"\t"]; } [mStr appendString:@"(\n"]; for (int i = 0; i < self.count; i++) { NSString *lastSymbol = (self.count == i + 1) ? @"":@","; id value = self[i]; if ([value respondsToSelector:@selector(descriptionWithLocale:indent:)]) { [mStr appendFormat:@"\t%@%@%@\n",tab,[value descriptionWithLocale:locale indent:level + 1],lastSymbol]; } else { [mStr appendFormat:@"\t%@%@%@\n",tab,value,lastSymbol]; } } [mStr appendFormat:@"%@)",tab]; return mStr; } @end @implementation NSDictionary (Log) - (NSString *)descriptionWithLocale:(id)locale indent:(NSUInteger)level { NSMutableString *mStr = [NSMutableString string]; NSMutableString *tab = [NSMutableString stringWithString:@""]; for (int i = 0; i < level; i++) { [tab appendString:@"\t"]; } [mStr appendString:@"{\n"]; NSArray *allKey = self.allKeys; for (int i = 0; i < allKey.count; i++) { id value = self[allKey[i]]; NSString *lastSymbol = (allKey.count == i + 1) ? @"":@";"; if ([value respondsToSelector:@selector(descriptionWithLocale:indent:)]) { [mStr appendFormat:@"\t%@%@ = %@%@\n",tab,allKey[i],[value descriptionWithLocale:locale indent:level + 1],lastSymbol]; } else { [mStr appendFormat:@"\t%@%@ = %@%@\n",tab,allKey[i],value,lastSymbol]; } } [mStr appendFormat:@"%@}",tab]; return mStr; } @end
以上是关于打印可读字典及数组的主要内容,如果未能解决你的问题,请参考以下文章
试图从一个 np 数组中创建一个可读的 txt 文件,全部打印在一行上?