//参数介绍:
//   (NSMutableArray *)data :保存的数据,暂时先存储地物名称
//   (NSString *)fileName :存储的文件名
+(BOOL) saveFavoriteData:(NSMutableArray *) arrFavor  saveFileName:(NSString *)fileName
{
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString *documentsDirectory = [paths objectAtIndex:0];
    //NSArray *FeatureAttribute2Plist =  [[NSArray alloc]initWithObjects:@"name",@"poiID",@"type",@"objectID",@"icon", nil];
    if (!documentsDirectory) {
        NSLog(@ "Documents directory not found!" );
        return NO;
    }
    NSString *appFile = [documentsDirectory stringByAppendingPathComponent:fileName];
    NSMutableArray *resultArr=[[NSMutableArray alloc]init];
    if (arrFavor!=nil&&![arrFavor isKindOfClass:[NSNull class]]) {
        if (arrFavor.count>0) {
            if( [arrFavor[arrFavor.count-1] isKindOfClass:[FeatureAttribute2 class]]){
                for (FeatureAttribute2*feature in arrFavor) {
                    if(feature.poiID==nil){
                        feature.poiID=@"nil";
                    }
                    if(feature.objectID==nil){
                        feature.objectID=@"nil";
                    }
                    if(feature.name==nil){
                        feature.name=@"未知";
                    }
                    if(feature.x==nil){
                        feature.x=@"nil";
                    }
                    if(feature.y==nil){
                        feature.y=@"nil";
                    }
                        [resultArr addObject:feature.name];
                        [resultArr addObject:feature.poiID];
                        [resultArr addObject:feature.type];
                        [resultArr addObject:feature.objectID];
                        [resultArr addObject:feature.x];
                        [resultArr addObject:feature.y];
                        //[resultArr addObject:feature."%@",s];
                    
                }
            }
        }
    }
    if (resultArr.count>0) {
        return ([resultArr writeToFile:appFile atomically:YES]);
    }
    else{
        return NO;
    }
    
}
//读取游戏数据
//参数介绍:
//   (NSString *)fileName :需要读取数据的文件名
+(id) loadFavoriteData:(NSString *)fileName
{
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString *documentsDirectory = [paths objectAtIndex:0];
    NSString *appFile = [documentsDirectory stringByAppendingPathComponent:fileName];
    NSMutableArray *myData = [[NSMutableArray alloc] initWithContentsOfFile:appFile];
    NSMutableArray *myData2 = [NSMutableArray new];
    for(int m=0;m<myData.count;m=m+6)
    {
        NSString *fName = myData[m];
        NSString *fPoiID=myData[m+1];
        NSString *fType=myData[m+2];
        NSString *fObjectID=myData[m+3];
        NSString *fX=myData[m+4];
        NSString *fY=myData[m+5];
        FeatureAttribute2*feature=[FeatureAttribute2 new];
        feature.name=fName;
        feature.poiID=fPoiID;
        feature.type=fType;
        feature.objectID=fObjectID;
        feature.x=fX;
        feature.y=fY;
        [myData2 addObject:feature];
    }

return myData2;
}

转载于:https://www.cnblogs.com/sandyLovingCoding/p/5743528.html

iOS开发--保存数据到本地相关推荐

  1. iOS开发之数据存储

    概览 在iOS开发中数据存储的方式可以归纳为两类:一类是存储为文件,另一类是存储到数据库.例如前面IOS开发系列-Objective-C之Foundation框架的文章中提到归档.plist文件存储, ...

  2. iOS开发系列--数据存取

    原文地址为: iOS开发系列--数据存取 概览 在iOS开发中数据存储的方式可以归纳为两类:一类是存储为文件,另一类是存储到数据库.例如前面IOS开发系列-Objective-C之Foundation ...

  3. iOS开发之数据存取

    本文转载至 http://www.cocoachina.com/ios/20141111/10190.html 2014-11-11 13:43 编辑:suiling 分类:iOS开发 来源:崔江涛( ...

  4. iOS开发网络篇—搭建本地服务器

    iOS开发网络篇-搭建本地服务器 一.简单说明 说明:提前下载好相关软件,且安装目录最好安装在全英文路径下.如果路径有中文名,那么可能会出现一些莫名其妙的问题. 提示:提前准备好的软件 apache- ...

  5. python保存数据到本地文件_python保存数据到本地文件的方法

    python保存数据到本地文件的方法 1.保存列表为.txt文件 #1/list写入txt ipTable = ['158.59.194.213', '18.9.14.13', '58.59.14.2 ...

  6. iOS开发之数据存储之Preference(偏好设置)

    1.概述 很多iOS应用都支持偏好设置,比如保存用户名.密码.字体大小等设置,iOS提供了一套标准的解决方案来为应用加入偏好设置功能. 每个应用都有个NSUserDefaults实例,通过它来存取偏好 ...

  7. 【原】unity3D ios 退出保存数据(2)

    前一篇退出保存数据仅试用于ipad1 ipad2 .phone4s及以前版本,不适用于new pad(不支持后台渲染) 所以修改了前文,以此适应现有的所有ios设备. 实现如下: void OnApp ...

  8. iOS开发网络——数据缓存

    一.关于同一个URL的多次请求 有时候,对同一个URL请求多次,返回的数据可能都是一样的,比如服务器上的某张图片,无论下载多少次,返回的数据都是一样的. 上面的情况会造成以下问题 (1)用户流量的浪费 ...

  9. 【原】unity3D ios 退出保存数据

    转载请注明出处:http://www.cnblogs.com/U-tansuo/archive/2012/07/11/U_tansuo.html 纠正一点错误(注意看一下红字部分)  UnitySen ...

  10. JS保存数据到本地文件(普通文件和excel文件)——普通文件使用blob实现(excel自己写格式)——代码详解

    今天做项目,有一个页面是从后台请求数据,如果想下载,那么就手动点击下载数据,可是如果两次都从服务器请求数据,有点浪费服务器资源,所以干脆就直接把数据保存在本地浏览器,然后点击后保存到本地(前面是普通文 ...

最新文章

  1. 使用NetBeans IDE开发C程序
  2. SIMD学习笔记整理(索引贴)
  3. dede整站动态化或是整站静态化方法
  4. 你很可能需要知道这个调试小技巧
  5. 靶场练习第二十二天~vulnhub靶场之Momentum-2
  6. 初探webpack之编写plugin
  7. Spring容器创建流程(8)初始化bean
  8. net core 小坑杂记之配置文件读取(不定期更新)
  9. 使用 laravel Passport 做 API 认证
  10. mysql 5.7.26 linux安装_mysql-5.7.28 在Linux下的安装教程图解
  11. 芯片数据分析步骤5 过滤探针
  12. 利用WireShark下载视频网站的流媒体视频
  13. 管家婆服务器备份文件夹,请问管家婆数据备份在哪里?如何恢复?
  14. 《Cinema 4D + After Effects动态图形设计案例解析》——1.2 动态图形的历史和发展...
  15. Python数据分析练习:北京、广州PM2.5空气质量分析(2)
  16. MIUI10设置Android通知,Miui10状态栏美化修改工具
  17. 公交换乘GIS地图应用解决方案
  18. QGC地面站手把手教你改——如何添加跟随面板显示关键参数
  19. 使用URL 启动unity Andriod APP并传递参数
  20. 魔兽世界你无法向该服务器发邮件什么意思,魔兽世界:对于怀旧服无法上线的3大原因!暴雪是这样解释的!...

热门文章

  1. 【JSON 注解】JSON循环引用1-----Jackson常用注解介绍 eq:@JsonIgnore
  2. debian英文环境中中文输入
  3. verycd重整——《TrainSignal视频教程》(TrainSignal)[ISO]
  4. Spring Boot + Prometheus + Grafana 打造可视化监控,一目了然!
  5. 免费自学编程的12个网站
  6. 微盟数据已经全面找回 并公布商家赔付计划
  7. 还在用上古的 ls 命令管理文件吗,是时候使用终端文件管理神器 lf 了!
  8. 互联网大牛们的电脑桌面,佩服!
  9. 给职场人士的四点良心建议
  10. Google 投资 Lyft 背后、AlphaGo Zero 人工智能威胁论?