当控制台输出的内容为乱码

来源:互联网 发布:软件开发的创新思维 编辑:程序博客网 时间:2024/04/27 23:20

问题:当程序使用NSLog(@"%@",dic);//打印出字典中的内容时是否遇到这种情况?

比如出现以下情况:


那么,就需要想办法解决了。在这里使用类目因为要打印输出的是字典,就需要让字典里的内容转换成中文,才能让我们在控制台看到输出内容。有两个类一个解决数组中的乱码转换,一个解决字典中的乱码转换。

创建两个类如下图:

                       

类目:(Category)创建步骤:

1.

2.





NSArray+EasyLog(数组解决数组中的乱码问题)

在.h文件中:



在.m文件中:





同理:NSDictionary+NSDictionary_DIC.h


在.m文件中:(.h中不用写)


#import "NSDictionary+NSDictionary_DIC.h"

@implementation NSDictionary (NSDictionary_DIC)

-(NSString *)descriptionWithLocale:(id)locale{
    NSDictionary *dic=self;
    NSMutableString *str=[NSMutableString stringWithFormat:@"{\n"];
    for (id obj in self) {
        [str appendFormat:@"%@=%@\n",obj,[dic objectForKey:obj]];
    }
    [str appendFormat:@"}"];
    return str;

}

@end




在加入相应的类后,就能得到想要的效果:







0 0