iOS获取沙盒路径并写入文件

.h文件中

//你需要的数据集合形式
@property(nonatomic,strong)NSMutableArray *groupArray;//数组
@property(nonatomic,strong)NSMutableDictionary *allDict;//字典

//判断沙盒里面是否有需要的对象
+(ShareDataHandleModel*)shareDataHandleModel;

//获取沙盒文件中document路径
+(NSString*)documentPath;

//通过文件名从沙盒读数据
-(void)readDataFromDocumentWithFileName:(NSString*)fileName;//数组

-(void)readDataFromDocumentWithFileNameToDict:(NSString *)fileName;//字典

//写入
-(void)myWirteTofile:(NSString*)fileName;

.m文件中

+(ShareDataHandleModel*)shareDataHandleModel
{
   //如果为空 创建一个新的
    if (nil==shareModel) {
                shareModel=[[ShareDataHandleModel alloc]init];
    }
    return shareModel;
}

//获取沙盒文件中document路径
+(NSString*)documentPath
{
    NSArray *pathArray=NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    return pathArray[0];
}

//通过文件名从沙盒读数据(数组)
-(void)readDataFromDocumentWithFileName:(NSString*)fileName
{
    //拼接文件路径
    NSString *filePath=[[[self class]documentPath]stringByAppendingFormat:@"/%@",fileName];
    
    NSArray *tempArray=[NSArray arrayWithContentsOfFile:filePath];
    
    self.groupArray=[NSMutableArray arrayWithObject:tempArray];

}

//通过文件名从沙盒读数据(字典)
-(void)readDataFromDocumentWithFileNameToDict:(NSString *)fileName
{
    //拼接文件路径
    // NSString *filePath=[[[self class]documentPath]stringByAppendingFormat:@"/%@",fileName];
    
    NSString *filePath=[self appendPath:fileName];//使用下面封装好的
    self.allDict=[NSMutableDictionary dictionaryWithContentsOfFile:filePath];
}

//封装
-(NSString*)appendPath:(NSString*)fileName
{

//拼接文件路径
    return [[[self class]documentPath]stringByAppendingFormat:@"/%@",fileName];

}

//写入
-(void)myWirteTofile:(NSString*)fileName
{
    NSString *filePath=[self appendPath:fileName];
    
    NSMutableArray *a=self.groupArray[0];
    [a writeToFile:filePath atomically:YES];

}

时间: 2024-10-11 17:29:05

iOS获取沙盒路径并写入文件的相关文章

iOS 获取沙盒路径方法

//获取家目录路径的函数: NSString *homeDir = NSHomeDirectory(); //获取Documents目录路径的方法: NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString *docDir = [paths objectAtIndex:0]; //获取Caches目录路径的方法: NSArray *paths

iOS沙盒(sandbox)机制及获取沙盒路径

一. 每个iOS应用SDK都被限制在“沙盒”中,“沙盒”相当于一个加了仅主人可见权限的文件夹,苹果对沙盒有以下几条限制. (1).应用程序可以在自己的沙盒里运作,但是不能访问任何其他应用程序的沙盒. (2).应用程序间不能共享数据,沙盒里的文件不能被复制到其他应用程序文件夹中,也不能把其他应用程序文件夹中的文件复制到沙盒里. (3).苹果禁止任何读.写沙盒以外的文件,禁止应用程序将内容写到沙盒以外的文件夹中. (4).沙盒根目录里有三个文件夹:Documents,一般应该把应用程序的数据文件存到

iOS之沙盒机制和如何获取沙盒路径

iOS APP可以在自己的沙盒里读写文件,但是,不可以访问其他APP的沙盒.每一个APP都是一个信息孤岛,相互是不可以进行通信的,唯独可以通过URL Scheme.沙盒里面的文件可以是照片.声音文件.文本.属性列表等. 沙盒机制简介 沙盒简述: 每一个APP都有一个存储空间,就是沙盒. APP之间不能相互通信. 沙盒根目录结构:Documents.Library.temp. 简述一下Documents.Library.temp的区别: Documents:用于存储用户数据,iTunes备份和恢复

iOS沙盒(sandbox)机制及获取沙盒路径

一.每个iOS应用SDK都被限制在沙盒中,沙盒相当于一个加了仅主人可见权限的文件夹,苹果对沙盒有以下几条限制. (1).应用程序可以在自己的沙盒里运作,但是不能访问任何其他应用程序的沙盒. (2).应用程序间不能共享数据,沙盒里的文件不能被复制到其他应用程序文件夹中,也不能把其他应用程序文件夹中的文件复制到沙盒里. (3).苹果禁止任何读.写沙盒以外的文件,禁止应用程序将内容写到沙盒以外的文件夹中. (4).沙盒根目录里有三个文件夹: Documents:一般应该把应用程序的数据文件存到这个文件

iOS开发之获取沙盒路径

iOS开发之沙盒机制(SandBox)具体解说了沙盒的一些机制.在开发中,我们须要对沙盒进行操作.所以我们须要获取到沙盒路径. 沙盒里的目录包含Documents.Library.tmp.这三个目录的作用请点击这里.接下来我们来解说怎样获取Documents.Library.tmp的路径. 获取沙盒根文件夹 获取沙盒根文件夹.直接调用NSHomeDirectory(): //获取沙盒根文件夹 NSString *directory = NSHomeDirectory(); NSLog(@"dir

IOS-沙盒机制(二 文件读写)

一 目录说明 如下图所示,一个沙盒中典型存在下面的目录和文件 各个目录及文件说明: 1.Documents      您应该将所有的应用程序数据文件写入到这个目录下,这个目录用于存储用户数据或其它应该定期备份的信息. 2.AppName.app   这是应用程序的程序包目录,包含应用程序的本身.由于应用程序必须经过签名,所以您在运行时不能对这个目录中的内容进行修改,否则可能会使应用程序无法启动. 3.Library              这个目录下有两个子目录:Caches 和 Prefer

获取沙盒路径的方法

//第一种获取沙盒路径的方法//    NSString *pathStr = NSUserName();//    NSString *homePathStr = NSHomeDirectoryForUser(pathStr);//    NSLog(@"%@",homePathStr);        //第二种获取沙盒路经的方法//    NSString *homePathStr = NSHomeDirectory();//    NSLog(@"lllll----%

iOS 获取沙盒文件路径及 写入/删除 沙盒文件

出于安全考虑,iOS系统的沙盒机制规定每个应用都只能访问当前沙盒目录下面的文件(也有例外,比如系统通讯录能在用户授权的情况下被第三方应用访问),这个规则把iOS系统的封闭性展现的淋漓尽致. 一.沙盒中几个主要的目录 每个沙盒下面都有相似的目录结构,如下图所示(出自苹果官方文档): 每个应用的沙盒目录都是相似的,主要包含图中所示的4个目录: 1.MyApp.app ①存放内容 该目录包含了应用程序本身的数据,包括资源文件和可执行文件等.程序启动以后,会根据需要从该目录中动态加载代码或资源到内存,这

iOS学习7:iOS沙盒(sandBox)机制(一)之获取沙盒路径及目录说明(转)

转:http://my.oschina.net/joanfen/blog/151145 一.iOS沙盒机制 iOS的应用只能访问为该应用创建的区域,不可访问其他区域,应用的其他非代码文件都存在此目录下,包括图片,属性文件plist,bundle,nib文件等,这块区域称之为沙盒(sandBox). 每个应用都有属于自己的存储空间,即沙盒 应用只能访问自己的沙盒,不可访问其他区域 如果应用需要进行文件操作,则必须将文件存放在沙盒中,尤其是数据库文件,在电脑上操作时,可以去访问,但是如果要装在真机上