OC中NSFileManager

NSFileManager介绍

 NSFileManager是用来管理文件系统的
它可以用来进行常见的文件\文件夹操作(拷贝、剪切、创建等) NSFileManager使用了单例模式singleton
使用defaultManager方法可以获得那个单例对象
[NSFileManager defaultManager]

NSFileManager的基本用法

 path这个文件或文件夹(目录)是否存在
-(BOOL)fileExistsAtPath:(NSString *)path;
path这个文件或文件夹是否存在,isDirectory代表是否为文件夹
-(BOOL)fileExistsAtPath:(NSString *)path isDirectory:(BOOL *) isDirectory;
path这个文件或文件夹是否可读
-(BOOL)isReadableFileAtPath:(NSString *)path;
path这个文件或文件夹是否可写
-(BOOL)isWritableFileAtPath:(NSString *)path;
path这个文件或文件夹是否可删除
-(BOOL)isDeletableFileAtPath:(NSString *)path; 注意:系统目录不允许删除   获得path这个文件/文件夹的属性
  -(NSDictionary *) attributesOfItemAtPaht:(NSString *) paht error:(NSError **)error;
  
  获得子目录信息(包括后代元素路径信息)
  NSArray *paths = [ NSFileManager subpathsAtPath:path];
  
  获取path的所有子路径(后代路径),上面两个方法功能一样
  -(NSArray *)subpathsOfDirectoryAtPaht:(NSString *)path error:(NSError **)error;   获得path的当前子路径(path下地所有直接子内容,path必须是一个目录)
  -(NSArray *) contentsOfDirectoryAtPath:(NSString *)path error:(NSError **)error;
  
  获取文件内容
  -(NSObject *)contentsAtPaht :(NSString *)path;
  

NSFileManager对文件的 创建 移动

 只能创建文件夹(createIntermediates为YES代表自动创建中间的文件夹)
注意:如果要创建的目录已经存在,则本次创建失败
-(BOOL)createDirectoryAtPath:(NSString *)path withIntermediateDirectories:(BOOL)createIntermediates attributes:(NSDictionary *)attributes error:(NSError **)error; 文件的拷贝,如果目标目录已经存在同名文件,则无法拷贝
-(BOOL)copyItemAtPath:(NSString *) srcPath toPath:(NSString *)dstPath error :(NSError **)error;
文件的移动
-(BOOL)moveItemAtPath:(NSString *) srcPath toPath:(NSString *)dstPath error :(NSError **)error;
删除文件
-(BOOL) removeItemAtPath:(NSString *)path error:(NSError **) error; 创建文件:
把字符串转换为NSData,(NSData是用来存储二进制字节数据的)
NSData *data =[s1 dataUsingEncoding:NSUTF8String Encoding];
-(BOOL)createFileAtPath:(NSString *)path contents:(NSData *)data attributes:(NSDictionary *)attr;
上一篇:The packaging and installation process of Android programs


下一篇:ZOJ 3913 Bob wants to pour water ZOJ Monthly, October 2015 - H