IOS开发之JSON转PLIST实例详解

 更新时间:2016年11月13日 14:55:08   作者:android_ls  
这篇文章主要介绍了IOS开发之JSON转PLIST实例详解的相关资料,需要的朋友可以参考下

 IOS JSON转PLIST

  从xx.json文件中读取JSON数据,写入到xx.plist文件中,实现代码如下:

NSString *path = @"/Users/android_ls/Desktop/city_province.json"; 
  NSArray *array = [NSJSONSerialization JSONObjectWithData:[NSData dataWithContentsOfFile:path] options:NSJSONReadingMutableLeaves error:nil]; 
  [array writeToFile:@"/Users/android_ls/Desktop/city_province.plist" atomically:YES]; 

     注:上面的代码片段必须在模拟器上运行

    若将上面的代码片段改为如下:

NSString *path = [[NSBundle mainBundle] pathForResource:@"city_province.json" ofType:nil]; 
MyLog(@"path = %@",path); 
 
NSArray *array = [NSJSONSerialization JSONObjectWithData:[NSData dataWithContentsOfFile:path] options:NSJSONReadingMutableLeaves error:nil]; 
 
NSString *newPath = [NSString stringWithFormat:@"%@%@",[[NSBundle mainBundle] bundlePath],@"/city_province.plist" ]; 
 MyLog(@"newPath = %@", newPath); 
 
[array writeToFile:newPath atomically:YES]; 

      注:在测试前已将city_province.json文件copy到Supporting Files目录下

     放在模拟器上测试,打印LOG如下:

2014-10-15 22:38:03.224 YWBAPP[11578:60b] path = /Users/android_ls/Library/Application Support/iPhone Simulator/7.1/Applications/0909D47B-A2B6-467D-9E19-396A73383D8A/YWBAPP.app/city_province.json
2014-10-15 22:38:03.225 YWBAPP[11578:60b] newPath = /Users/android_ls/Library/Application Support/iPhone Simulator/7.1/Applications/0909D47B-A2B6-467D-9E19-396A73383D8A/YWBAPP.app/city_province.plist

      放在真机上测试,打印LOG如下:

2014-10-15 22:40:59.796 YWBAPP[3127:60b] path = /var/mobile/Applications/4DAB17CC-F307-4D1B-B78D-80E9B5B4343F/YWBAPP.app/city_province.json
2014-10-15 22:40:59.805 YWBAPP[3127:60b] newPath = /var/mobile/Applications/4DAB17CC-F307-4D1B-B78D-80E9B5B4343F/YWBAPP.app/city_province.plist

 路径是对的,但是在相应的目录下是找不到文件的。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

相关文章

  • 详解iOS 用于解决循环引用的block timer

    详解iOS 用于解决循环引用的block timer

    这篇文章主要介绍了详解iOS 用于解决循环引用的block timer,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-12-12
  • iOS点击查看大图的动画效果

    iOS点击查看大图的动画效果

    这篇文章主要为大家详细介绍了iOS点击查看大图的动画效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-11-11
  • iOS 10 和Xcode8 一起 创建 Siri 功能步骤详解(OC写的 )

    iOS 10 和Xcode8 一起 创建 Siri 功能步骤详解(OC写的 )

    这篇文章主要介绍了iOS 10 和Xcode8 一起 创建 Siri 功能(OC写的 ),本文分步骤给大家介绍的非常详细,需要的朋友可以参考下
    2017-12-12
  • iOS中设置网络超时时间+模拟的方法详解

    iOS中设置网络超时时间+模拟的方法详解

    这篇文章主要介绍了在iOS中设置网络超时时间+模拟的方法,文中介绍的非常详细,相信对大家具有一定的参考价值,需要的朋友们下面来跟着小编一起来学习学习吧。
    2017-04-04
  • React Native搭建iOS开发环境

    React Native搭建iOS开发环境

    React Native的门槛不管是对于前端开发者还是移动端开发者来说都是很高的,既要懂原生又要懂js,技术栈是相当长的。但是没有关系,下面我们一步步来学习,慢慢成长吧!
    2016-09-09
  • iOS为UIView设置阴影效果

    iOS为UIView设置阴影效果

    现在很多的开发者们都会在开发的时候加阴影效果,所以这篇文章跟大家分享下iOS为UIView设置阴影效果的实现过程,有需要的朋友们可以参考借鉴,下面来一起看看吧。
    2016-09-09
  • iOS中正向、逆向传值的方法总结

    iOS中正向、逆向传值的方法总结

    这篇文章主要给大家总结介绍了关于iOS中正向、逆向传值的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-08-08
  • 解决iOS调起微信支付显示系统繁忙问题

    解决iOS调起微信支付显示系统繁忙问题

    这篇文章主要介绍了解决iOS调起微信支付显示系统繁忙问题,需要的朋友可以参考下
    2016-12-12
  • 百度地图PC端判断用户是否在配送范围内

    百度地图PC端判断用户是否在配送范围内

    在pc端设置商家的配送范围,用户在下单时,根据用户设置的配送地点判断是否在可配送范围内,并给用户相应的提示,下面通过本文给大家分享具有实现代码,感兴趣的朋友一起学习吧
    2016-01-01
  • 浅谈iOS11新特性:新增拖拽交互体验

    浅谈iOS11新特性:新增拖拽交互体验

    这篇文章主要介绍了浅谈iOS11新特性:新增拖拽交互体验,iOS11新引入了拖拽相关的API可以帮助开发者快速的构建拖拽交互,在iOS11中,使用这种API进行APP的开发为设计提供了一种全新维度的用户交互方式。
    2017-12-12

最新评论