今天,用到了文件的管理,发现自己又忘得差不多了。屋里有个苍蝇,老是在眼前晃来晃去,好是烦人。

  用到了两个地方:

  1. 创建文件夹;

  2. 移动文件

功能还有很多,今天先总结两个!

  1. 创建文件夹;

 //测试是否是目录
BOOL isDirectory; //因为第2个参数是BOOL *,是一个指针,而不是一个值。
NSString * path = [[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)objectAtIndex:0]
stringByAppendingPathComponent:@"abc.txt"];
BOOL isExist = [[NSFileManager defaultManager]fileExistsAtPath:path isDirectory:&isDirectory];
NSLog(@"isExist = %d----isDirectory = %d",isExist,isDirectory); if (!isExist & !isDirectory) {
//创建新的文件夹
BOOL createSuccess = [[NSFileManager defaultManager]createDirectoryAtPath:path withIntermediateDirectories:YES
attributes:nil error:nil];
NSLog(@"createSuccess = %d",createSuccess);
}

  

  2. 移动文件

-(BOOL)contentsAtPath:path                                           //从一个path所指定的文件上读取数据
-(BOOL)createFileAtPath:path contents:(NSData*)data attributes:attr //向一个path所指向的文件上写入数据data
-(BOOL)removeFileAtPath:path handler:handler //删除一个path所指定的文件
-(BOOL)movePath:from toPath:to handler:handler //重命名或移动一个文件。from是源文件,to是目标文件

在网上看到其他人的总结,粘在这:

-(BOOL)contentsAtPath:path                                           //从一个path所指定的文件上读取数据
-(BOOL)createFileAtPath:path contents:(NSData*)data attributes:attr //向一个path所指向的文件上写入数据data
-(BOOL)removeFileAtPath:path handler:handler //删除一个path所指定的文件
-(BOOL)movePath:from toPath:to handler:handler //重命名或移动一个文件。from是源文件,to是目标文件
-(BOOL)contentsEqualAtPath:path1 andPath:path2 //比较两个文件的内容是相同
-(BOOL)fileExistsAtPath:path //判断path所指定的文件是否存在
-(BOOL)isReadableFileAtPath:path //判断path所指定的文件是否存在,能否进行读取操作
-(BOOL)isWritableFileAtPath:path //判断path所指定的文件是否存在,能否进行写入操作
-(NSDictionary*)fileAttributesAtPath:path traverseLink:(BOOL)flag //获取path所指定的文件的属性,返回一个字典类型
-(BOOL)changeFileAtributes:attr atPath:path //更改path所指定的文件的属性 NSFileManager目录操作
-(NSString*)currentDirectoryPath //获取当前目录
-(BOOL)changeCurrentDirectoryPath:path //更改当前目录
-(BOOL)copyPath:from toPath:to handler:handler //复制目录结构
-(BOOL)createDirectoryAtPath:path attributes:attr //创建一个新的目录
-(BOOL)fileExistsAtPath:path isDirectory:(BOOL*)flag //判断是不是目录
-(NSArray*)directoryContentsAtPath:path //列出目录内容
-(NSDirectoryEnumerator*)enumeratorAtPath:path //枚举目录的内容
-(BOOL)removeFielPath:path handler:handler //删除一个空目录
-(BOOL)movePath:from toPath:to handler:handler //重命名或移动一个目录 -(NSString*)NSUserName //返回当前用户目录
-(NSString*)NSFullUserName //返回当前用户的完整目录
-(NSString*)NSHomeDirectory //返回当前用户主目录路经
-(NSString*)NSHomeDirectoryForUser:(NSString*)user //返回user用户的主目录
-(NSString*)NSTemporaryDirectory //返回可以用于创建临时文件的临时目录 +(NSString*)pathWithComponents:components //根据components中的值构造路经
-(NSArray*)pathComponents //柝分路经,获得各个部分,并放入数组
-(NSString*)lastPathComponents //提取路经中最后一个组成部分(一般就是文件名)
-(NSString*)pathExtension //提取文件的扩展名
-(NSString*)stringByAppendingPathComponents:path //将path增加到现有路经的尾部
-(NSStirng*)stringByAppendingPathExtension:ext //将ext扩展名增加到尾部
-(NSString*)stringByDeletingLastPathComponents //删除路经的最后一个组成部分
-(NSString*)stringByDeletingPathExtension //删除最后的扩展名
-(NSString*)stringByExpandingTildeInPath //将路经中的各个"~"符号转换为用户主目录(~)或者为一个指定用户的主目录(~user)
-(NSString*)stringByStandardizingPath //解析~,父日目录(..)、当前目录(.)和符号链接来返回一个标准化路经

  

  

iOS NSFileManager的更多相关文章

  1. iOS NSFileManager对沙盒文件及目录添加删除操作

    iOS 使用 NSFileManager对沙盒里面的文件和目录,增加,修改,删除操作: - (void)viewDidLoad { [super viewDidLoad]; self.title = ...

  2. ios NSFileManager和NSFileHandle(附:获取文件大小 )

    转自 http://blog.csdn.net/zhibudefeng/article/details/7795946 //file 文件操作 NSFileManager  常见的NSFileMana ...

  3. iOS NSFileManager 使用详解

    使用NSFileManager 文件系统接口 允许访问文件夹内容 创建 重命名 删除文件 修改文件和文件属性,以及Finder对所有文件系统任务执行的一般操作. 访问NSFileManager,使用共 ...

  4. ios NSFileManager创建目录、文件

    NSFileManager *fileManager = [NSFileManager defaultManager]; NSString *str1 = NSHomeDirectory(); _fi ...

  5. ios NSFileManager 用法详解

    转自:http://blog.csdn.net/ios_che/article/details/7287266 iPhone文件系统NSFileManager讲解是本文要介绍的内容,主要是通过ipho ...

  6. IOS 创建目录/文件夹

    •IOS 应用目录简介 个文件夹:Documents, Library和 tmp.Library包含Caches.Preferences目录. Documents:应用中用户数据可以放在这里,iTun ...

  7. ios 文件操作(NSFileManager)

    IOS的沙盒机制,应用只能访问自己应用目录下的文件,iOS不像android,没有SD卡概念,不能直接访问图像.视频等内容. iOS应用产生的内容,如图像.文件.缓存内容等都必须存储在自己的沙盒内. ...

  8. IOS管理文件和目录NSFileManager

    1.常见的NSFileManager文件方法 -(NSData *)contentsAtPath:path //从一个文件读取数据 -(BOOL)createFileAtPath: path cont ...

  9. IOS 开发文件操作——NSFileManager

    转自:http://blog.csdn.net/xyz_lmn/article/details/8968213,留着方便查阅 iOS的沙盒机制,应用只能访问自己应用目录下的文件.iOS不像androi ...

随机推荐

  1. Mysql_mysql多个TimeStamp设置

    timestamp设置默认值是Default CURRENT_TIMESTAMP timestamp设置随着表变化而自动更新是ON UPDATE CURRENT_TIMESTAMP 但是由于 一个表中 ...

  2. 常用正则表达式(?i)忽略字母的大小写!

    1.^/d+$ //匹配非负整数(正整数 + 0) 2.^[0-9]*[1-9][0-9]*$ //匹配正整数 3.^((-/d+)|(0+))$ //匹配非正整数(负整数 + 0) 4.^-[0-9 ...

  3. [转]ASP.NET 状态服务 及 session丢失问题解决方案总结

    转自[http://blog.csdn.net/high_mount/archive/2007/05/09/1601854.aspx] 最近在开发一ASP.NET2.0系统时,在程序中做删除或创建文件 ...

  4. 如何使用 Migration创建一个迁移

    切换到YII所在的目录 yii migrate/create test

  5. 漫谈Java虚拟机(JVM)

    Java 虚拟机(JVM)是可运行 Java 代码的假想计算机. 只要根据 JVM 规范描述将解释器移植到特定的计算机上,就能保证经过编译的任何 Java 代码能够在该系统上运行. 从上图中不难明白J ...

  6. 【转】const和static readonly

    我们都知道,const和static readonly的确很像:通过类名而不是对象名进行访问,在程序中只读等等.在多数情况下可以混用.二者本质的区别在于,const的值是在编译期间确定的,因此只能在声 ...

  7. Apache Spark源码走读之1 -- Spark论文阅读笔记

    欢迎转载,转载请注明出处,徽沪一郎. 楔子 源码阅读是一件非常容易的事,也是一件非常难的事.容易的是代码就在那里,一打开就可以看到.难的是要通过代码明白作者当初为什么要这样设计,设计之初要解决的主要问 ...

  8. maven编译项目理解

    如何运行这个Web项目? 右键项目名称,在弹出的选项中选择 Run As => Maven install,然后 Eclise 会下载并安装相关依赖包.在等待一段时间后,构建成功的结果如下:

  9. 我的Ubuntu系统配置所作的备份记录如下

    Ubuntu无法关机解决办法 说明:如果不成功请参考一下文章最后的内容,也许会有帮助. 其实不止在ubuntu里面,fedora里面我也遇到了这个问题,就是电脑可以重启,但是不能直接关机,否则就一直停 ...

  10. General Questions:Front-end Developer Interview Questions

    What did you learn yesterday/this week? Learning Angular. What excites or interests you about coding ...