NSFileManager常用的文件方法:

-(NSData*)contentsAtPath:path 从一个文件中读取数据

-(BOLL)createFileAtPath:path contents:(NSData*)data attributes: attr 向一个文件写入数据

-(BOOL)removeItemAtPath:path error:err 删除一个文件

-(BOOL)moveItemAtPath:from toPath:to error:err 重命名或移动一个文件(to 不能是已存在的)

-(BOOL)copyItemAtPath:from toPath:to error:err 复制文件(to 不能是已存在的)

-(BOOL)contentsEqualAtPath:path1 andPath:path2 比较这两个文件的内容

-(BOOL)fileExistsAtPath:path 测试文件是否存在

-(BOOL)isReadableFileAtPath:path 测试文件是否存在,并且是否能执行读操作

-(BOOL)isWritableFileAtPath:path 测试文件是否存在,并且是否能执行写操作

-(NSDictionary*)attributesOfItemAtPath:path error:err 获取文件的属性

属性字典允许你指定要创建的文件的权限,如果将该参数指定为nil,该文件会被设置为默认权限。

1、通过一段程序来对文件进行操作:

  1. //
  2. //  main.m
  3. //  NSFileManager_01
  4. //
  5. //  Created by swinglife on 13-11-10.
  6. //  Copyright (c) 2013年 swinglife. All rights reserved.
  7. //
  8. #import <Foundation/Foundation.h>
  9. int main(int argc, const char * argv[])
  10. {
  11. @autoreleasepool {
  12. //文件名
  13. NSString *fileName = @"testFile";
  14. NSString *fileContent = @"这是文件内容!!!!";
  15. NSData *fileData = [fileContent dataUsingEncoding:NSUTF8StringEncoding];
  16. //创建NSFileManager实例
  17. NSFileManager *fm = [NSFileManager defaultManager];
  18. //创建文件
  19. [fm createFileAtPath:fileName contents:fileData attributes:nil];
  20. //判断文件是否存在 不存在就结束程序
  21. if([fm fileExistsAtPath:fileName]==NO){
  22. NSLog(@"文件不存在");
  23. return 1;
  24. }
  25. //拷贝文件
  26. if([fm copyItemAtPath:fileName toPath:@"newFile" error:NULL]==NO){
  27. NSLog(@"复制失败");
  28. return 2;
  29. }
  30. //测试两个文件是否相同
  31. if([fm contentsEqualAtPath:fileName andPath:@"newFile"]==NO){
  32. NSLog(@"文件不相同");
  33. return 3;
  34. }
  35. //重命名newFile
  36. [fm moveItemAtPath:@"newFile" toPath:@"newFile2" error:NULL];
  37. //获取newFile2的大小
  38. NSDictionary *fileAttr = [fm attributesOfItemAtPath:@"newFile2" error:NULL];
  39. if(fileAttr!=nil){
  40. NSLog(@"文件大小:%llu bytes",[[fileAttr objectForKey:NSFileSize] unsignedLongLongValue]);
  41. }
  42. //删除文件
  43. [fm removeItemAtPath:fileName error:NULL];
  44. //显示newFile2的内容
  45. NSString *data = [NSString stringWithContentsOfFile:@"newFile2" encoding:NSUTF8StringEncoding error:NULL];
  46. NSLog(@"%@",data);
  47. }
  48. return 0;
  49. }

NSFileManager常用的目录方法

-(NSString*)currentDirectoryPath 获取当前目录

-(BOOL)changeCurrentDirectoryPath:path 更改当前目录

-(BOOL)copyItemAtPath:from toPath:to error:err 复制目录结构

-(BOOL)createDirectoryAtPath:path withIntermediateDirectories:(BOOL)flag attributes:attr 创建一个新目录

-(BOOL)fileExistsAtPath:path isDirectory:(BOOL*)flag 测试文件是不是目录(flag中存储结果)

-(NSArray*)contentsOfDirectoryAtPath:path error:err 列出目录内容

-(NSDirectoryEnumerator*)enumeratorAtPath:path 枚举目录的内容

-(BOOL)removeItemAtPath:path error:err 删除空目录

-(BOOL)moveItemAtPath:from toPath:to error:err 重命名或移动一个目录

2、通过一段程序来对目录进行操作:

    1. //
    2. //  main.m
    3. //  NSFileManager_02
    4. //
    5. //  Created by swinglife on 13-11-10.
    6. //  Copyright (c) 2013年 swinglife. All rights reserved.
    7. //
    8. #import <Foundation/Foundation.h>
    9. int main(int argc, const char * argv[])
    10. {
    11. @autoreleasepool {
    12. //文件目录
    13. NSString *dirName = @"testDir";
    14. //创建NSFileManager实例
    15. NSFileManager *fm = [NSFileManager defaultManager];
    16. //获取当前目录
    17. NSString *path = [fm currentDirectoryPath];
    18. NSLog(@"Path:%@",path);
    19. //创建新目录
    20. [fm createDirectoryAtPath:dirName withIntermediateDirectories:YES attributes:nil error:NULL];
    21. //重命名新的目录
    22. [fm moveItemAtPath:dirName toPath:@"newDir" error:NULL];
    23. //更改当前目录到新的目录
    24. [fm changeCurrentDirectoryPath:@"newDir"];
    25. //获取当前工作目录
    26. path = [fm currentDirectoryPath];
    27. NSLog(@"Path:%@",path);
    28. }
    29. return 0;
    30. }

iOS文件和目录操作,iOS文件操作,NSFileManager使用文件操作:的更多相关文章

  1. IOS中获取各个文件的目录路径的方法和NSFileManager类

    转自:http://blog.sina.com.cn/s/blog_5fb39f910101di92.html IOS中获取各种文件的目录路径的方法 iphone沙箱模型的有四个文件夹,分别是什么,永 ...

  2. C# 对包含文件或目录路径信息的 System.String 实例执行操作

    在字符串操作中有一类比较特殊的操作,就是对包含文件或目录路径信息的 System.String 实例执行操作.比如根据一个表示路径的字符串获取其代表的文件名称.文件夹路径.文件扩展名等.在很多时候,我 ...

  3. linux文件和目录的删除、新建、移动等操作

    在Linux下进行切换目录   cd 在Linux下查看当前目录下的内容   ls.  ll.  ls -al 如何显示当前命令所在的目录路径   pwd 在Linux下创建目录   mkdir 在L ...

  4. chattr 改变文件、目录属性 (chmod、passwd等涉及文件修改的命令提示Operation not permitted)

    与chmod这个命令相比,chmod只是改变文件的读写.执行权限,更底层的属性控制是由chattr来改变的. lsattr查看文件或目录属性 chattr命令的用法:chattr [ -RVf ] [ ...

  5. (22)zip命令:压缩文件或目录&&unzip命令:解压zip文件

    1.zip 命令基本格式如下: [root@localhost ~]#zip [选项] 压缩包名 源文件或源目录列表 注意,zip 压缩命令需要手工指定压缩之后的压缩包名,注意写清楚扩展名,以便解压缩 ...

  6. iOS中获取各种文件的目录路径的方法

    我们的app在手机中存放的路径是:/var/mobile/Applications/4434-4453A-B453-4ADF535345ADAF344 后面的目录4434-4453A-B453-4AD ...

  7. C#对Windows文件/文件夹/目录的一些操作总结

    1.   在一个目录下创建一个文件夹 if (!System.IO.Directory.Exists(path)) System.IO.Directory.CreateDirectory(path); ...

  8. 八. 输入输出(IO)操作6.文件与目录管理

    目录是管理文件的特殊机制,同类文件保存在同一个目录下不仅可以简化文件管理,而且还可以提高工作效率.Java 语言在 java.io 包中定义了一个 File 类专门用来管理磁盘文件和目录. 每个 Fi ...

  9. Linux文件和目录操作管理命令

    1.pwd:显示工作目录路径 -p:显示实际物理路径 -l:显示链接路径 2.cd:更改工作目录路径 cd:进入用户主目录 cd~:进入用户主目录 cd-:返回进入此目录之前所在的目录 cd..:返回 ...

  10. Linux学习——操作文件与目录

    1. ls:列出文件及目录信息. 命令格式:ls [选项] ... 常用选项: -a 显示指定目录下所有子目录与文件,包括隐藏文件. -A 显示指定目录下所有子目录与文件,包括隐藏文件.但不列出“.” ...

随机推荐

  1. WeUI 是由微信官方设计团队专为微信移动 Web 应用设计的 UI 库

    WeUI 是由微信官方设计团队专为微信移动 Web 应用设计的 UI 库. WeUI 是一套同微信原生视觉体验一致的基础样式库,为微信 Web 开发量身设计,可以令用户的使用感知更加统一.包含butt ...

  2. How to forcefully delete a daemonset or a pod in kubernetes cluster

    I have setup a kubernetes cluster which is working fine. I created deployment with type as daemonset ...

  3. 架构-LAMP特级学习(网站大存储量解决方案)

    数据库采用主从.分区技术 数据库优化

  4. 【LeetCode】53. Maximum Subarray (2 solutions)

    Maximum Subarray Find the contiguous subarray within an array (containing at least one number) which ...

  5. SecureCRT 详细使用教程和技巧

    SecureCRT 常用技巧 0.在secureCRT里切换不同的窗口:ctrl+tab.    复制:[ctrl] + [shift] + c    粘贴:[ctrl] + [shift] + v  ...

  6. Android开发学习之3大类菜单

    在Android系统中,菜单可以分为三类:选项菜单(Option Menu),上下文菜单(Context Menu)以及子菜单(Sub Menu). 一.选项菜单(Option Menu) 创建选项菜 ...

  7. ASP.NET MVC下的异步Action的定义和执行原理[转]

    http://www.cnblogs.com/artech/archive/2012/06/20/async-action-in-mvc.html Visual Studio提供的Controller ...

  8. Windows下面安装和配置Solr 4.9(一)

       1.Solr下载 下载地址 :http://lucene.apache.org/solr/   2.解压,测试 在example文件夹中找到start.jar文件,用命令提示符运行这个文件:ja ...

  9. OpenXml读取word内容注意事项

    OpenXml读取word内容注意事项 1.使用OpenXml读取word内容,word后缀必须是".docx":如果word后缀是".doc"需要转成&quo ...

  10. 最常用的五类CSS选择器

    一些新手朋友对选择器一知半解,不知道在什么情况下运用什么样的选择器,这是一个比较头疼的问题,针对新手朋友,对CSS选择器作一些简单的说明,希望能对大家的学习工作有一定的帮助,更多的CSS知识请参考We ...