欢迎来到天天文库
浏览记录
ID:50530908
大小:35.66 KB
页数:6页
时间:2020-03-10
《OC中文件管理的知识小结及案例20150130.docx》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、OC中文件管理的知识小结及案例/*-》使用NSFileManager类可以用来标识一个文件的目录,这个路径名是一个NSString-》相对路径名是一种相对于当前目录的路径完整路径名,也称为绝对路径名,以斜线开始,斜线实际上就是一个目录,称为根目录-》NSCoding协议:类的声明中有NSCoding协议,必须实现该协议的编码和解码这两种实例方法。此功能提供了基础的归档(对象和其它结构存储在磁盘)和解档(对象都复制到不同的地址空间)功能-》若将对象存入文件,该类必须遵循NSCoding协议,实现两个方法://编码一个对象-(void)encodeWithCoder:(
2、NSCoder*)aCoder;//解码并初始化一个(来自磁盘文件的)对象-(id)initWithCoder:(NSCoder*)aDecoder;*encoderWithCoder:从coder中读取数据,保存到相应的文件中,即反序列化数据*initWithCoder:读取文件中内容,并把这些数据写到实例中去,序列化数据。-》NSCoder是将支持NSCodeing协议的对象状态序列化成二进制的NSData,这样data就能存到硬盘上。那么,再次启动的时候如果硬盘上有这个data就可以通过反向decoder来获得上次保存的状态-》NSCoder是一个抽象类,抽象
3、类不能被实例化,只能提供一些想让子类继承的方法。*NSKeyedArchier:把对象写到二进制流中去*NSKeyedUnarchiver:从二进制流读取对象-》//把磁盘文件的数据,写入到缓冲区NSDataNSData*data=[NSDatadataWithContentsOfFile:@"/file.txt"];-》//把缓冲区的数据,写入到文件[data2writeToFile:@"/file.txt"atomically:YES];//文件不存在就创建一个-》NSFileManager:文件管理类,提供了对文件和目录的基本操作-》每个文件是通过发送NSFi
4、leManagerle类创建的对象调用defaultManager的方法获取的-》//创建一个NSFileManger对象NSFileManger*fm=[NSFileManagerdefaultMan];-》attributesOfItemAtPath:error:返回一个字典属性,包含了文件的各种属性-》NSError*err=nil;NSDictionary*attr=[fmattributesOfItemAtPath:@"filepath"error:&err];-》从属性字典里取出一个特定属性,文件大小intfile桃姐=[[attrobjectForKe
5、y:NSFileSize]intValue];-》contentsAtPath:需要一个路径并读取指定文件的内容到一个存储区域,结果是返回存储区域的对象或如果读取失败返回nilNSData*data=[fmcontentsAtPath:@"/Users/sxwt22/Desktop/file.txt"];AddressCard*card=[NSKeyedUnarchiverunarchiveObjectWithData:data];-》createFileAtPath:contents:attributes:创建一个文件与指定的属性(默认属性参数nil),然后写入N
6、SData对象的内容到指定文件。-》显示目录的两个方法:enmeratorAtPath:递归枚举,还枚举子目录的内容directoryContentsAtPath:非递归枚举,只枚举当前目录的内容*nil默认权限[fmcreateFileAtPate:@"/Users/sxwt22/Desktop/file.txt"contents:dataattributes:nil];-》NSTemporaryDirctory:返回一个临时文件夹的路径-》NSHomeDirctory:返回用户的主目录-》NSHomeDirctoryForUser:返回指定用户的主目录-》las
7、tPathComponent:返回的是最后路径下的文件夹-》stringByAppendingPathComponent:方法是在该路径下追加一个路径(不加/)-》currentDirectory:该方法是与stringByAppendingPathComponent方法相结合的,可以在当前目录创造出完整的一个文件到路径。-》pathExtension给出了所提供的路径下文件后缀,如果文件没有延长,简单的方法将返回一个空字符串-》pathComponents:方法以数组的形式返回一个指定路径下的每一个部分。*/#import"AddressCard.h"#imp
此文档下载收益归作者所有