Objc将数据写入iOS真机的plist文件中

大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处.
如果觉得写的不好请多提意见,如果觉得不错请多多支持点赞.谢谢! hopy ;)



如何写入模拟器的博文在 这里

但是这对真机不管用,因为在真机环境下,App在Xcode中的Resources文件夹都是不可写的.所以我们要在App第一次运行时将需要修改且长久保存的数据放到Document目录下:

//在Document目录中初始化地图数据文件,因为该目录下文件可写且可以持久保存
+(void)initDataFile{
    NSString *docPath = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask,
                                                            YES)[0];
    //取得目标文件路径
    sMapInfoInDocPath = [docPath stringByAppendingPathComponent:@"MapInfo.plist"];
    NSFileManager *fm = [NSFileManager defaultManager];
    //如果目标文件不存在说明是App第一次运行,需要将相关可修改数据文件拷贝至目标路径.
    if (![fm fileExistsAtPath:sMapInfoInDocPath]) {
        NSError *error = nil;
        //取得源文件路径
        NSString *srcPath = [[NSBundle mainBundle] pathForResource:MAP_INFO_FILE ofType:@"plist"];
        if (![fm copyItemAtPath:srcPath toPath:sMapInfoInDocPath error:&error]) {
            CCLOG(@"ERR:copy file failed:%@",error);
        }
    }
}

注意当删除一个App后,该App先前存放在Document目录下的所有文件都会被删除.

时间: 2024-08-25 19:27:12

Objc将数据写入iOS真机的plist文件中的相关文章

ios 真机不能正常显示图片

问题描述 ios 真机不能正常显示图片 我的项目里面,我保存opengl数据为png图片,到document文件夹,需要显示时用imageWithContentsOfFile,但是问题是在模拟器运行什么都好好的,在真机上运行就显示一片黑,在网上找了找解决办法都没能成功,跪求高手解答!!! 解决方案 PB 图片不能正常显示iphone真机无法显示图片,而模拟器可以正常显示ie6不能正常显示png24透明图片解决方案_完善中... 解决方案二: 因为沙盒文件路径不同吧,你是存到main bundle

ios 真机调试 主程序-iOS真机调试卡在主程序上

问题描述 iOS真机调试卡在主程序上 虽然可能没啥用,还是先说说背景.我公司用的Apple电脑系统是OS X10.10的(最新版本),Xcode是version 6.1的(也是最新版本).做个项目在iphone4(iOS7.1)上调试没有什么问题,换了iPhone5(iOS8.1)调试就会卡在主程序上(这个大家都懂),打All exception断点没有任何停顿,下面没有任何问题输出,但是点击调试"强制继续"就能正常运行,拔掉数据线也能正常在iPhone5上运行,虽然可能不影响最后的使

最全的iOS真机调试教程(证书生成等)

准备 开发者账号 自从Xcode7 出来之后,一般的真机测试不需要开发者账号,也就不需要看这篇教程,只有app具有"推送"等功能的时候,要真机测试就必须要开发者账号和设置证书.苹果只是让你体验一下它的基本功能,要深入还是要花钱的. 待测试的项目 真机测试步骤 一.创建App ID 二.创建证书请求文件 (CSR文件) 三.根据CSR创建开发者证书(CER)(开发.测试用的Develope证书) 四.添加设备(Devices) 五.根据Devices创建Provisioning Prof

iOS真机调试 for Xcode 5

引言:由于Xcode5的到来,关于iOS软件进行真机调试方面,有了一些变化,苹果在Xcode 5中修改了一些规则,一方面是阻止以往破解的方式进行调试(免证书).另一方面是添加了自动生成证书的功能特性,来加快我们开发者生成一些调试用的证书.免去我们频繁要去苹果开发者网站自己生成. 接下来就介绍一下如何在Xcode5中进行真机调试. 调试前的准备工作: 1:需要注册并购买苹果的开发者计划,价格是99美元一年. 2:一部iPhone 相关网站: 1:苹果开发者主页: https://developer

iOS开发之Info.plist文件

建立一个工程后,会在Supporting files文件夹下看到一个"工程名-Info.plist"的文件,该文件对工程做一些运行期的配置,非常重要,不能删除   在旧版本Xcode创建的工程中,这个配置文件的名字就叫"Info.plist" 项目中其他Plist文件不能带有"Info"这个字眼,不然会被错认为是传说中非常重要的"Info.plist" 项目中还有一个InfoPlist.strings的文件,跟Info.pli

iOS 真机调试(史上最详细步骤解析,hmt精心打造)

/*************************************************************1********************************************************************/ /*************************************************************2******************************************************

iOS 真机测试的时候报错 After modifying system headers, please delete the module cache at '/ /Users/smile/Libr

这个是Xcode缓存导致的 fatal error: file ' '/ /Users/smile/Library/Developer/Xcode/DerivedData/ModuleCache/VE5HTVL861UA' was built  note: after modifying system headers, please delete the module cache at '/Users/ligang/Library/Developer/Xcode/DerivedData/Modu

C#如何将数据写入当前程序安装目录某文件夹下

public static string GetXmlFullPath(string strPath) { string filePath = GetPhysicalPath(); if (filePath.IndexOf(":") > 0) { return filePath; } else { return null; } } //获取配置文件的物理路径 public static string GetPhysicalPath() { //获得当前程序运行的物理路径比如F:\

C# 将数据写入当前程序安装目录某文件夹下

public static string GetXmlFullPath(string strPath) { string filePath = GetPhysicalPath(); if (filePath.IndexOf(":") > 0) { return filePath; } else { return null; } } //获取配置文件的物理路径 public static string GetPhysicalPath() { //获得当前程序运行的物理路径比如F:\