首页 > 代码库 > OC 解决NSArray、NSDictionary直接打印中文出现乱码的问题
OC 解决NSArray、NSDictionary直接打印中文出现乱码的问题
在iOS开发中,经常需要查看数组中得元素是否是自己想要的,但是苹果并没有对直接打印数组中得中文作处理,直接打印就会出现一堆很讨厌的东西,解决其实很简单,就是需要通过为NSArray添加分类,重写 - (NSString *)descriptionWithLocale:(id)locale方法即可
代码如下:
#import "NSArray+Log.h"@implementation NSArray (Log)- (NSString *)descriptionWithLocale:(id)locale{ NSMutableString *str = [NSMutableString stringWithFormat:@"%lu (\n", (unsigned long)self.count]; for (id obj in self) { [str appendFormat:@"\t%@, \n", obj]; } [str appendString:@")"]; return str;}@end
同理要解决NSDictionary乱码问题,也需要为NSDictionary类添加一个分类,重写 - (NSString *)descriptionWithLocale:(id)locale方法
代码如下:
1 #import "NSDictionary+MyLog.h" 2 3 @implementation NSDictionary (MyLog) 4 5 6 - (NSString *)descriptionWithLocale:(id)locale 7 { 8 NSArray *allKeys = [self allKeys]; 9 NSMutableString *str = [[NSMutableString alloc] initWithFormat:@"{\t\n "];10 for (NSString *key in allKeys) {11 id value= http://www.mamicode.com/self[key];"\t \"%@\" = %@,\n",key, value];13 }14 [str appendString:@"}"];15 16 return str;17 }18 @end
OC 解决NSArray、NSDictionary直接打印中文出现乱码的问题
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。