iOS NSFileManager文件操作

参考:http://blog.csdn.net/xyz_lmn/article/details/8968213 感谢这些先行者

文件操作常用操作记录一下:

 //获取沙盒的根路径
    NSString *dirHome = NSHomeDirectory();
    NSLog(@"%@",dirHome);
    //获取Documents目录路径
    NSArray *path = NSSearchPathForDirectoriesInDomains(NSDocumentationDirectory,NSUserDomainMask, YES);
    NSString *documentsDirectory = [path objectAtIndex:0];
    NSLog(@"%@",documentsDirectory);
    //获取Library 目录路径
    path = NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES);
    NSString *libraryDirectory  = [path objectAtIndex:0];
    NSLog(@"%@",libraryDirectory);
    //获取caches目录路径
    path = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES);
    NSString *caches = [path objectAtIndex:0];
    NSLog(@"%@",caches);
    //获取Tmp 目录路径
    NSString *tmpDirectory = NSTemporaryDirectory();
    NSLog(@"%@",tmpDirectory);
    //创建文件夹
    //1 获得文件路径
    //2 创建文件管理器
    //3 用文件管理器在目录上创建文件
    path = NSSearchPathForDirectoriesInDomains(NSDocumentationDirectory,NSUserDomainMask, YES);
    documentsDirectory = [path objectAtIndex:0];
    documentsDirectory = [documentsDirectory stringByAppendingPathComponent:@"test"];
    NSFileManager *fm = [NSFileManager defaultManager];
    BOOL res = [fm createDirectoryAtPath:documentsDirectory withIntermediateDirectories:YES attributes:nil error:nil];
    if(!res)
    {
        NSLog(@"文件夹创建成功");
    }
    else
    {
        NSLog(@"文件夹创建失败");
    }
    //创建文件(与文件夹的创建相同)
    path = NSSearchPathForDirectoriesInDomains(NSDocumentationDirectory, NSUserDomainMask, YES);
    documentsDirectory = [path objectAtIndex:0];
    documentsDirectory = [documentsDirectory stringByAppendingPathComponent:@"text"];
    documentsDirectory = [documentsDirectory stringByAppendingPathComponent:@"123.txt"];
    fm = [NSFileManager defaultManager];
    res = [fm createDirectoryAtPath:documentsDirectory withIntermediateDirectories:YES attributes:nil error:nil];
    if(res)
    {
        NSLog(@"文件夹创建成功");
    }
    else
    {
        NSLog(@"文件夹创建失败");
    }
    //写数据到文件
    path = NSSearchPathForDirectoriesInDomains(NSDocumentationDirectory, NSUserDomainMask, YES);
    documentsDirectory = [path objectAtIndex:0];
    documentsDirectory = [documentsDirectory stringByAppendingPathComponent:@"text"];
    documentsDirectory = [documentsDirectory stringByAppendingPathComponent:@"123.txt"];
    NSString *content = @"文件写入的内容";
    res = [content writeToFile:documentsDirectory atomically:YES encoding:NSUTF8StringEncoding error:nil];
    if(res)
    {
        NSLog(@"文件夹创建成功");
    }
    else
    {
        NSLog(@"文件夹创建失败");
    }
    //读文件数据
    path = NSSearchPathForDirectoriesInDomains(NSDocumentationDirectory, NSUserDomainMask, YES);
    documentsDirectory = [path objectAtIndex:0];
    documentsDirectory = [documentsDirectory stringByAppendingPathComponent:@"text"];
    documentsDirectory = [documentsDirectory stringByAppendingPathComponent:@"123.txt"];
    content  = [NSString stringWithContentsOfFile:documentsDirectory encoding:NSUTF8StringEncoding error:nil];
    NSLog(@"文件读取成功:%@",content);
    //文件的属性
    path = NSSearchPathForDirectoriesInDomains(NSDocumentationDirectory, NSUserDomainMask, YES);
    documentsDirectory = [path objectAtIndex:0];
    documentsDirectory = [documentsDirectory stringByAppendingPathComponent:@"text"];
    documentsDirectory = [documentsDirectory stringByAppendingPathComponent:@"123.txt"];
    fm = [NSFileManager defaultManager];
    NSDictionary *fileAttributes = [fm attributesOfItemAtPath:documentsDirectory error:nil];
    NSArray *keys;
    id key,value;
    keys = [fileAttributes allKeys];
    int count = [keys count];
    for (int i= 0; i<count; i++)
    {
        key = [keys objectAtIndex:i];
        value = [fileAttributes objectForKey:key];
        NSLog(@"Key:%@ for value :%@",key,value);
    }
    //删除文件
    path = NSSearchPathForDirectoriesInDomains(NSDocumentationDirectory, NSUserDomainMask, YES);
    documentsDirectory = [path objectAtIndex:0];
    documentsDirectory = [documentsDirectory stringByAppendingPathComponent:@"text"];
    documentsDirectory = [documentsDirectory stringByAppendingPathComponent:@"123.txt"];
    fm = [NSFileManager defaultManager];
    res=[fm removeItemAtPath:documentsDirectory error:nil];
    if(res)
    {
        NSLog(@"文件删除成功");
    }
    {
        NSLog(@"文件删除失败");
    }

iOS NSFileManager文件操作

时间: 2024-08-25 07:31:20

iOS NSFileManager文件操作的相关文章

NSFileManager文件操作的十个小功能

NSFileManager是一个单列类,也是一个文件管理器.可以通过NSFileManager创建文件夹.创建文件.写文件.读文件内容等等基本功能. 下面将介绍NSFileManager文件操作的十个小功能.我们在Documents里面进行举例,首先是获取Documents的路径.这个在iOS开发之沙盒机制(SandBox)已经详细讲解过了.获取Documents路径方法如下: - (NSString *)getDocumentsPath { //获取Documents路径 NSArray *p

【Foundation】NSFileManager文件操作

NSFileManager文件操作: -(NSData *) contentsAtPath: path 从一个文件中读取数据 -(bool)createFileAtPath:path contents:(NSData *)data attributes:attr 创建一个文件并写入数据 -(BOOL) removeItemAtPath: path error: err 删除一个文件 -(BOOL) moveItemAtPath: from toPath: to error: err 重命名或移动

【Foundation】NSFileManager文件操作.02

1.文件目录操作 // 1.创建文件操作对象fm,并打印出当前目录 NSFileManager *fm=[NSFileManager defaultManager]; // 获取当前目录 NSLog(@"当前目录:%@",[fm currentDirectoryPath]); ///2014-04-01 13:58:20.523 NSFileManager[1161:303] 当前目录:/Users/haiyefeng/Library/Developer/Xcode/DerivedDa

IOS 开发文件操作——NSFileManager

转自:http://blog.csdn.net/xyz_lmn/article/details/8968213,留着方便查阅 iOS的沙盒机制,应用只能访问自己应用目录下的文件.iOS不像android,没有SD卡概念,不能直接访问图像.视频等内容.iOS应用产生的内容,如图像.文件.缓存内容等都必须存储在自己的沙盒内.默认情况下,每个沙盒含有3个文件夹:Documents, Library 和 tmp.Library包含Caches.Preferences目录.               上

iOS开发-文件操作

目录操作和文件管理 学习目标 1.理解单例 2.掌握NSFileManager类常用的文件管理操 3.掌握NSFileHandle类常用的文件数据操作 4.了解NSData类的常用操作 5.掌握Plist文件读写 ---------------------- 通常程序在运行中或者程序结束之后,需要保存一些信息,而且需要持久化存储信息,比如登陆信息.视频播放记录.收藏记录等等,那么我们可以采用以下几种方式对数据进行持久化保存. 1.1单例模式(当前对象有且仅有一个实例) 好处:只有一个实例,数据共

IOS之文件操作

Project Day02 文件的相关操作 NSFileManger:对整个文件进行操作<手机文件在沙箱中不能直接操作>   删除文件 步骤: 1 创建NSFileManger的实例 2. 创建NSerror的实例初始值为空 3. 调用removeItemAtPath方法第一个参数为要删除的文件的位置第二个error的参数设置为&error的地址 4. 错误判断 如果出错 可以调用[error  localizedDescription]返回系统提供给的描述 NSFileManager

ios 关于文件操作 获取 文件大小

分类: Apple IPhone2012-06-28 11:31 4664人阅读 评论(0) 收藏 举报 ios语言manager测试c c语言 实现 #include "sys/stat.h" - (long long) fileSizeAtPath:(NSString*) filePath{ struct stat st;      if(lstat([filePath cStringUsingEncoding:NSUTF8StringEncoding], &st) == 

IOS Plist文件操作之写入/读取/删除

写入数据到plist文件   //获取路径对象     NSArray *pathArray = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);     NSString *path = [pathArray objectAtIndex:0];     //获取文件的完整路径     NSString *filePatch = [path stringByAppendingPathC

iOS plist 文件操作

转自:http://blog.csdn.net/totogo2010/article/details/7634185 在做iOS开发时,经常用到到plist文件,  那plist文件是什么呢? 它全名是:Property List,属性列表文件,它是一种用来存储串行化后的对象的文件.属性列表文件的扩展名为.plist ,因此通常被称为 plist文件.文件是xml格式的. Plist文件通常用于储存用户设置,也可以用于存储捆绑的信息 我们创建一个项目来学习plist文件的读写. 1.创建项目Pl