当前位置: 首页 > 编程笔记 >

IOS开发之JSON转PLIST实例详解

郭凡
2023-03-14
本文向大家介绍IOS开发之JSON转PLIST实例详解,包括了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开发之UIWebView,包括了实例详解IOS开发之UIWebView的使用技巧和注意事项,需要的朋友参考一下 iOS开发之UIWebView 是本文要介绍的内容,UIWebView是iOS sdk中一个最常用的控件。是内置的浏览器控件,我们可以用它来浏览网页、打开文档等等。这篇文章我将使用这个控件,做一个简易的浏览器。如下图: 我们创建一个Window-based A

  • 本文向大家介绍JSP 开发之 releaseSession的实例详解,包括了JSP 开发之 releaseSession的实例详解的使用技巧和注意事项,需要的朋友参考一下 JSP 开发之 releaseSession的实例详解 Hibernate可以实现分页查询,昨天试了一下,分页效果不错。但是发现了一个问题,就是当请求超过20次的时候页面就会卡死。经检查,是卡在分页查询这一块。 应用程序采用st

  • 本文向大家介绍iOS开发之手势识别实例,包括了iOS开发之手势识别实例的使用技巧和注意事项,需要的朋友参考一下 感觉有必要把iOS开发中的手势识别做一个小小的总结。下面会先给出如何用storyboard给相应的控件添加手势,然后在用纯代码的方式给我们的控件添加手势,手势的用法比较简单。和button的用法类似,也是目标 动作回调,话不多说,切入今天的正题。 总共有六种手势识别:轻击手势(TapGe

  • 本文向大家介绍Android开发之TabActivity用法实例详解,包括了Android开发之TabActivity用法实例详解的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Android开发之TabActivity用法。分享给大家供大家参考,具体如下: 一.简介 TabActivity继承自Activity,目的是让同一界面容纳更多的内容。TabActivity实现标签页的功能,通过

  • 本文向大家介绍IOS开发之手势响应事件优先级的实例详解,包括了IOS开发之手势响应事件优先级的实例详解的使用技巧和注意事项,需要的朋友参考一下 IOS开发之手势响应事件优先级的实例详解 交互响应事件都是通过手势的操作完成的,如点击、或双击、或长按,这些交互都是在视图中完成的,但是不同的视图可能会有不同的交互,有时候就会出现交互响应事件冲突的情况。这时候就需要处理事件优先级,以便达到想要的效果。 示

  • 本文向大家介绍IOS 开发之应用唤起实现原理详解,包括了IOS 开发之应用唤起实现原理详解的使用技巧和注意事项,需要的朋友参考一下 一、什么是iOS应用唤起 IOS中的应用唤起用来实现以下功能:在浏览器中可以通过某些方式打开IOS手机本地的app,如果该app没有安装可以跳转到该应用对应的App Store的下载页。  二、App store下载页连接 App store中某个应用的下载页连接形如