美文网首页
iOS 中文打印显示unicode码

iOS 中文打印显示unicode码

作者: 突刺刺 | 来源:发表于2018-06-01 15:20 被阅读349次

需求:Xcode打印时,unicode码转中文

原理

  • NSString都可以正常打印,不需转换

  • 新建分类NSArray+Log,重写系统方法:

- (NSString *)description
{
    NSMutableString *strM = [NSMutableString stringWithString:@"(\n"];
    [self enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) {
        if ([obj isKindOfClass:[NSString class]])
        {
                [strM appendFormat:@"\t\t%@,\n", obj];
        }
        else
        {
                [strM appendFormat:@"\t\t%@,\n", [obj description]];
        }
    }];
    [strM appendString:@"\t\t)"];
    return strM;
}
  • 建立分类NSDictionary+Log,重写它们的系统方法description
- (NSString *)description
{
    NSMutableString *strM = [NSMutableString stringWithString:@"\n{"];
    [self enumerateKeysAndObjectsUsingBlock:^(id key, id obj, BOOL *stop) {
        if ([obj isKindOfClass:[NSString class]])
        {
            [strM appendFormat:@" %@ = %@\n", key, obj];
        }
        else
        {
            [strM appendFormat:@" %@ = %@\n", key, [obj description]];
        }
    }];
    [strM appendString:@"}"];
    return strM;
}

测试

- (void)test
{
    NSArray *city = @[@"北京", @"广州",@"深圳",@"上海", @"重庆"];
    NSDictionary *dict = @{@"城市":@"北京", @"面积":@"xxx平方公里", @"人口":@"xxx万人"};

    NSLog(@" city :%@ ",city);
    NSLog(@" dict :%@ ",dict);
}

打印

 city :(
        北京,
        广州,
        深圳,
        上海,
        重庆,
        ) 

dict :
{ 城市 = 北京
 面积 = xxx平方公里
 人口 = xxx万人
}

相关文章

网友评论

      本文标题:iOS 中文打印显示unicode码

      本文链接:https://www.haomeiwen.com/subject/pgcksftx.html