美文网首页
Objective-C学习笔记 - 目录与文件操作

Objective-C学习笔记 - 目录与文件操作

作者: 遠遊旳遊子 | 来源:发表于2018-08-27 15:05 被阅读0次

学习目标

  • NSFileManager类常用的文件管理操
  • NSFileHandle类常用的文件数据操作
  • NSData类的常用操作
  • NSFileManager

<1>创建文件管理器单例对象
// 初始化
NSFileManager * fm = [NSFileManager defaultManager];

<2>遍历目录下的内容
//浅度遍历 仅仅遍历当前文件夹下的第一层子文件夹
// contentsOfDirectoryAtPath,指定路径下的第一层子文件夹(文件内容)
- (NSArray *)contentsOfDirectoryAtPath:(NSString *)path error:(NSError **)error;
//深度遍历(又称为递归便利)
//遍历指定路径下的所有文件夹和文件
//指定路径下的子文件夹下的所有文件
- (NSArray *)subpathsOfDirectoryAtPath:(NSString *)path error:(NSError **)error

<3>创建文件
//创建普通文件
//createFileAtPath,在指定路径下,创建文件
//第二个参数contents,是指在创建文件的同时,附上的文件内容
//第三个参数attributes ,如果写nil, attributes会有系统自动管理
- (BOOL)createFileAtPath:(NSString *)path contents:(NSData *)data attributes:(NSDictionary *)attr;

//创建目录
//就是在指定路径下创建文件夹
//withIntermediateDirectories,是否创建没有路径
- (BOOL)createDirectoryAtPath:(NSString *)path withIntermediateDirectories:(BOOL)createIntermediates attributes:(NSDictionary *)attributes error:(NSError **)error ;

<4>拷贝文件/目录
//copyItemAtPath,在指定路径下拷贝项目(文件夹,也能文件)
//srcPath,原路径
//toPath,目标路径
- (BOOL)copyItemAtPath:(NSString *)srcPath toPath:(NSString *)dstPath error:(NSError **)error ;


<5>移动文件/目录
//moveItemAtPath,移动指定路径下的文件或目录,到另外一个指定的路径
//剪切的同时,也能修改目录或文件的名字
- (BOOL)moveItemAtPath:(NSString *)srcPath toPath:(NSString *)dstPath error:(NSError **)error ;

<6>删除文件/目录
//removeItemAtPath 删除指定路径下的文件夹或者文件
- (BOOL)removeItemAtPath:(NSString *)path error:(NSError **)error;


<7>获取文件属性
// attributesOfItemAtPath 查看指定目录下的文件或者文件夹的属性
- (NSDictionary *)attributesOfItemAtPath:(NSString *)path error:(NSError **)error;

<8>判断文件是否存在
- (BOOL)fileExistsAtPath:(NSString *)path;
  • NSFileHandle

NSFileHandle 对文件进行操作,读,写,设置文件指针偏移量的操作

<1>打开文件方法
//以只读方式打开
+ (id)fileHandleForReadingAtPath:(NSString *)path;
//以只写方式打开
+ (id)fileHandleForWritingAtPath:(NSString *)path;
//以读写方式打开
+ (id)fileHandleForUpdatingAtPath:(NSString *)path;

<2>读指定长度的数据
//readDataOfLength 读取指定长度的字符串
//得知,每个汉字在编译器中占三个字节
- (NSData *)readDataOfLength:(NSUInteger)length;

<3>从当前偏移量读到文件尾
//是将文本中所有的数据一次性读到内存中
- (NSData *)readDataToEndOfFile;

<4>设置文件偏移量
//2.txt中的文字abcefg,如果偏移量为2的话,那么就是从c字符往后读
//偏移量的默认值为0
- (void)seekToFileOffset:(unsigned long long)offset;

<5>将文件偏移量定位到文件尾
//将指针指向文本的结尾
- (unsigned long long)seekToEndOfFile;

<6>写文件
//(NSData *)data,内存数据类型
// NSString *string=@“abc”,[string dataUsingEncoding:NSUTF8StringEncoding]
- (void)writeData:(NSData *)data;

<7>将缓冲区内容立即同步写入磁盘
- (void)synchronizeFile;
  • NSData

//如果把字符串转化为NSData
NSString *str = @"welcome to beijing";
NSData *data = [str dataUsingEncoding:NSUTF8StringEncoding];

//NSData 转化为字符串
NSString *newStr = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];

相关文章

  • Objective-C学习笔记 - 目录与文件操作

    学习目标 NSFileManager类常用的文件管理操 NSFileHandle类常用的文件数据操作 NSData...

  • Golang os包与设置配置文件路径

    一、os包的学习与使用(文件,目录,进程的操作) 参考golang语言中os包的学习与使用(文件,目录,进程的操作...

  • python IO编程之操作文件和目录

    python学习笔记,特做记录,分享给大家,希望对大家有所帮助。 操作文件和目录 如果我们要操作文件、目录,可以在...

  • linux文件和目录操作

    文件目录操作 cp 复制 rm 移除文件或目录 mv 移动文件与目录,或更名

  • 文件与目录操作

    数据的存取方式数据库存取-->适合大量、且关系复杂并有序的数据存取文件存取-->适合大量、数据关系简单的数据存取,...

  • 文件与目录操作

    文件,就是存储在某种长期储存设备上的一段数据,长期存储设备包括:硬盘、U 盘、移动硬盘、光盘等在计算机中,文件是以...

  • 文件与流-1

    文件与流 持久化操作:(文件里、数据库里)Java.io 文件分隔符 目录操作 文件操作

  • LInux学习笔记2-文件与目录的操作

    进行文件与目录的操作时,常用的命令包括: mkdir: 创建目录。 rm: 移除文件和目录。 cp: 复制文件和目...

  • 文件和目录处理相关

    文件和目录处理相关 题: 考点:文件操作/写入操作; 延伸:目录操作函数,其他文件操作; 文件读写操作 文件系统函...

  • 第三天 Linux 基本命令、vim 操作命令

    第三天笔记 Linux 基本命令、vim 操作命令 Linux 基本命令 创建目录 删除文件或目录 创建文件 查看...

网友评论

      本文标题:Objective-C学习笔记 - 目录与文件操作

      本文链接:https://www.haomeiwen.com/subject/quttwftx.html