iOS----获取txt内容(不同种类的编码格式)转换为需要的类型

字符串类型

数组类型

字典类型

编码格式UTF8时,使用该方法可以实现转换为字典类型信息

    //获取文件路径
    NSString *path  = [NSBundle.mainBundle pathForResource:@"home_2" ofType:@"txt"];
    //文件内容转换成字符串类型
    NSString* str=[[NSString alloc] initWithContentsOfFile:path];
    //字符串内容转换为NSData类型
    NSData *data =  [str dataUsingEncoding:NSUTF8StringEncoding];
    //NSData类型转换为字典类型
    NSDictionary * dic =  [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:nil];
    //打印字典信息
    NSLog(@"dic%@",dic);

编码格式为UTF8时,使用该方法可以实现转换为字典类型信息

    NSString *path  = [NSBundle.mainBundle pathForResource:@"home_1" ofType:@"txt"];
    NSData *data =  [NSData dataWithContentsOfFile:path];
    NSDictionary * dic =  [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:nil];
    NSLog(@"%@",dic);

编码格式为GBK时,使用该方法可以实现转换为字典类型信息

思路:先将gbk格式的字符串转换成utf8格式的字符串,再使用。
      NSString *path  = [NSBundle.mainBundle pathForResource:self.textArray[self.num] ofType:@"txt"];
    NSStringEncoding enc = CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingGB_18030_2000);
    //文件内容转换成字符串类型
    NSString* str = [[NSString alloc] initWithContentsOfFile:path encoding:enc error:nil];
     NSLog(@"%@",str);
    NSDictionary * dic = [NSJSONSerialization JSONObjectWithData:[str dataUsingEncoding:NSUTF8StringEncoding] options:NSJSONReadingMutableContainers error:nil];
    NSLog(@"%@",dic);

//获取txt文件中的内容,且将内容转换为需要的类型
//首先获取到文件路径
//转换为需要的格式

// //编码格式有误时,使用该方法可以实现转换为字典类型信息
// //获取文件路径
// NSString path = [NSBundle.mainBundle pathForResource:@"home_2" ofType:@"txt"];
// //文件内容转换成字符串类型
// NSString
str=[[NSString alloc] initWithContentsOfFile:path];
// //字符串内容转换为NSData类型
// NSData *data = [str dataUsingEncoding:NSUTF8StringEncoding];
// //NSData类型转换为字典类型
// NSDictionary * dic = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:nil];
// //打印字典信息
// NSLog(@"dic%@",dic);

NSString *path1  = [NSBundle.mainBundle pathForResource:@"home" ofType:@"txt"];
NSDictionary* dic1 = [NSDictionary dictionaryWithContentsOfFile:path1];
NSLog(@"dic1%@",dic1);
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 编码问题一直困扰着开发人员,尤其在 Java 中更加明显,因为 Java 是跨平台语言,不同平台之间编码之间的切换...
    x360阅读 7,216评论 1 20
  • 为什么要编码 不知道大家有没有想过一个问题,那就是为什么要编码?我们能不能不编码?要回答这个问题必须要回到计算机是...
    艾小天儿阅读 17,750评论 0 2
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,860评论 19 139
  • 字符集和编码简介 在编程中常常可以见到各种字符集和编码,包括ASCII,MBCS,Unicode等字符集。确切的说...
    兰山小亭阅读 12,885评论 0 13
  • 早上起床,看了看外面灰蒙蒙的天气,再看看时间尚早,便浏览了一会儿朋友圈和群消息,然后毫无缘由的心情低落着。 这种低...
    静华2016阅读 3,764评论 7 5

友情链接更多精彩内容