NSDictionary和NSArray打印中文出现乱码的解决方案
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了NSDictionary和NSArray打印中文出现乱码的解决方案相关的知识,希望对你有一定的参考价值。
/*
新建一个分类,打印带中文的NSDictionary和NSArray就不会再出现乱码了:
*/
#import <Foundation/Foundation.h>
@implementation NSDictionary (Log)
-(NSString *)descriptionWithLocale:(id)locale
{
NSArray *allKeys = [self allKeys];
NSMutableString *str = [[NSMutableString alloc] initWithFormat:@"{\n"];
for (NSString *key in allKeys) {
id value= self[key];
[str appendFormat:@"\t%@ = %@;\n",key, value];
}
[str appendString:@"}"];
return str;
}
@end
@implementation NSArray (Log)
-(NSString *)descriptionWithLocale:(id)locale
{
NSMutableString *str = [NSMutableString string];
//拼接
[str appendString:@"("];
[self enumerateObjectsUsingBlock:^(id _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
[str appendString:[NSString stringWithFormat:@"\n\t%@,",obj]];
}];
[str appendString:@"\n)"];
//NSBackwardsSearch从后往前搜索
NSRange rang = [str rangeOfString:@"," options:NSBackwardsSearch];
if (rang.location != NSNotFound) {
[str deleteCharactersInRange:rang];
}
return str;
}
@end
以上是关于NSDictionary和NSArray打印中文出现乱码的解决方案的主要内容,如果未能解决你的问题,请参考以下文章
带有 NSArray 的 UITableview 包含 NSDictionary 和 NSDictionary 包含另一个 NSDictionary
设置嵌套的 NSDictionary 和 NSArray 值
c# 中 NSMutableDictionary()、NSMutableArray()、NSArray 和 NSDictionary 的等价物是啥?