Xcode 控制台输出中文

2022-03-23 15:51:34 浏览数 (1)

重写 NSArray、NSSet、NSDictionary 的输出方法,在Xcode实现中文(Unicode)字符在控制台的输出

原理

Xcode 控制台中在输出 NSArray、NSSet、NSDictionary 时,其中的中文字符会变成Unicode编码 如"U67cfU8367".

我们通过分类重写这些类的输出方法即可实现在控制台输出中文:

代码语言:javascript复制
 - (NSString *)descriptionWithLocale:(id)locale indent:(NSUInteger)level

效果

先看看效果:

创建一个字典并输出:

代码语言:javascript复制
NSData *strData = [@"str -> data格式的字符串" dataUsingEncoding:NSUTF8StringEncoding];

NSData *dicData = [NSJSONSerialization dataWithJSONObject:@{@"key0": @"字典 -> data 的数据",}
                                                      options:NSJSONWritingPrettyPrinted
                                                        error:nil];

NSMutableSet *set = [NSMutableSet setWithArray:@[@"set0",
                                                 strData,
                                                 dicData]];
NSDictionary *dic = @{@"name"  : @"BY",
                       @"My bolg" : @"http://qiubaiying.top",
                       @"count" : @(11),
                       @"strData" : strData,
                       @"dicData" : dicData,
                       @"set"     : set,
                       @"Unicode" : @"


	

0 人点赞