2025年3月23日 星期日 甲辰(龙)年 月廿二 夜 设为首页 加入收藏
rss
您当前的位置:首页 > 计算机 > 软件应用 > 开发工具(IDE)

iOS - 如何把 Xcode 打印出来的 UTF-8 格式字符变成汉字?

时间:10-23来源:作者:点击数:61

测试一个语音 SDK 的时候,发现打印出来字典里的中文汉字都显示为 UTF-8 的字符,百度了一下解决办法,发现大都是用给 NSArray 和 NSDictionary 创建分类的方法解决的,但是很多文章可能是写的匆忙,或者是复制粘贴的,不够美观和一目了然。而且创建分类的方式,对比我以前用小码哥的一个类来说,多了一个 .h 文件,不够精简。所以就做个笔记,留作备用。

首先新建一个 OC 的 .m 文件,不知道怎么新建也可以直接,创建普通的 UIVIew 的类,把 .h 删除,把 .m 所有除注释以外代码删除,修改成如下文所示一致就好。

  • #import <Foundation/Foundation.h>
  • @implementation NSDictionary (Log)
  • - (NSString *)descriptionWithLocale:(id)locale
  • {
  • NSMutableString *string = [NSMutableString string];
  • // 开头有个{
  • [string appendString:@"{\n"];
  • // 遍历所有的键值对
  • [self enumerateKeysAndObjectsUsingBlock:^(id key, id obj, BOOL *stop) {
  • [string appendFormat:@"\t%@", key];
  • [string appendString:@" : "];
  • [string appendFormat:@"%@,\n", obj];
  • }];
  • // 结尾有个}
  • [string appendString:@"}"];
  • // 查找最后一个逗号
  • NSRange range = [string rangeOfString:@"," options:NSBackwardsSearch];
  • if (range.location != NSNotFound)
  • [string deleteCharactersInRange:range];
  • return string;
  • }
  • @end
  • @implementation NSArray (Log)
  • - (NSString *)descriptionWithLocale:(id)locale
  • {
  • NSMutableString *string = [NSMutableString string];
  • // 开头有个[
  • [string appendString:@"[\n"];
  • // 遍历所有的元素
  • [self enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) {
  • [string appendFormat:@"\t%@,\n", obj];
  • }];
  • // 结尾有个]
  • [string appendString:@"]"];
  • // 查找最后一个逗号
  • NSRange range = [string rangeOfString:@"," options:NSBackwardsSearch];
  • if (range.location != NSNotFound)
  • [string deleteCharactersInRange:range];
  • return string;
  • }
  • @end

 

方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门