主要内容:  

  1)文件操作:对文件本身的操作(NSManager)

  2)对文件内容的操作(NSHandle)

1、NSManager

创建一个单例的file manager的对象

  1. //创建一个单例的file manager的对象
  2. NSFileManager * fm = [NSFileManager defaultManager];

查看PATH目录下有哪些文件或文件夹,返回值是一个数组

  1. //查看PATH目录下有哪些文件或文件夹,返回值是一个数组
  2. //定义一个宏
  3. #define PATH @"/XCode"
  4.  
  5. NSError *error = nil;
  6. //浅度遍历
  7. NSArray * array = [fm contentsOfDirectoryAtPath:PATH error:&error];
  8. if(error){
  9. NSLog(@"%@",error);
  10. exit(-);
  11. }
  12. NSLog(@"%@",array);
  1. //深度遍历
  2. array = [fm subpathsOfDirectoryAtPath:PATH error:&error];
  3. if(error){
  4. NSLog(@"%@",error);
  5. exit(-);
  6. }
  7. NSLog(@"%@",array);
  1. //创建目录
  2. //withIntermediateDirectories:YES,如果创建的目录中间目录不存在,则会创建中间目录;NO,如果中间目录不存在则会报错。
  3. [fm createDirectoryAtPath:[NSString stringWithFormat:@"%@/middle/dir",PATH] withIntermediateDirectories:YES attributes:nil error:&error];
  4. if(error){
  5. NSLog(@"%@",error);
  6. exit(-);
  7. }
  8.  
  9. //创建文件
  10. [fm createFileAtPath:[NSString stringWithFormat:@"%@/middle/dir",PATH] contents:[@"hello" dataUsingEncoding:NSUTF8StringEncoding] attributes:nil];
  11.  
  12. //文件的删除
  13. [fm removeItemAtPath:[NSString stringWithFormat:@"%@/middle",PATH] error:&error];
  14.  
  15. //拷贝文件
  16. [fm copyItemAtPath:[NSString stringWithFormat:@"%@/dir",PATH] toPath:[NSString stringWithFormat:@"%@/dir2",PATH] error:&error];
  17.  
  18. //移动文件
  19. [fm copyItemAtPath:[NSString stringWithFormat:@"%@/dir2",PATH] toPath:[NSString stringWithFormat:@"%@/dir3",PATH] error:&error];

OC文件操作1的更多相关文章

  1. OC文件操作(2)

    NSFileManager 文件管理器完成文件的创建.移动.拷贝等管理操作 1.查询文件和目录  OC中查询路径下的目录主要分为浅度遍历和深度遍历.  浅度遍历  NSFileManager * ma ...

  2. OC文件操作(1)

    1.文件的浅度遍历与深度遍历: //NSFileManager * fm = [[NSFileManager alloc]init];//创建文件管理器 //第一步创建一个文件管理器 NSError ...

  3. OC文件操作2

    1.对文件本身的操作 NSManager 2.对文件内容的操作 NSHandle 文件句柄 NSFileHandle * fh = [NSFileHandle fileHandleForReading ...

  4. OC文件操作、获取文件属性

    #import <Foundation/Foundation.h> //获取文件的属性 int main(int argc, const char * argv[]) { @autorel ...

  5. 归档NSKeyedArchiver解归档NSKeyedUnarchiver与文件管理类NSFileManager (文件操作)

    ========================== 文件操作 ========================== 一.归档NSKeyedArchiver 1.第一种方式:存储一种数据. // 归档 ...

  6. PHP文件操作系统----主要的文件操作函数

    一.文件操作系统概述 1.概述: php中的文件操作系统主要是对文件和目录的操作.文件在windows系统下分为3种不同:文件.目录.未知,在linux/unix系统下分为7种不同:block.cha ...

  7. 【.NET深呼吸】Zip文件操作(1):创建和读取zip文档

    .net的IO操作支持对zip文件的创建.读写和更新.使用起来也比较简单,.net的一向作风,东西都准备好了,至于如何使用,请看着办. 要对zip文件进行操作,主要用到以下三个类: 1.ZipFile ...

  8. 野路子出身PowerShell 文件操作实用功能

    本文出处:http://www.cnblogs.com/wy123/p/6129498.html 因工作需要,处理一批文件,本想写C#来处理的,后来想想这个是PowerShell的天职,索性就网上各种 ...

  9. Node基础篇(文件操作)

    文件操作 相关模块 Node内核提供了很多与文件操作相关的模块,每个模块都提供了一些最基本的操作API,在NPM中也有社区提供的功能包 fs: 基础的文件操作 API path: 提供和路径相关的操作 ...

随机推荐

  1. C#(winform)设置窗体的启动位置

    只需要设置窗体的StartPosition属性: registerForm.StartPosition = FormStartPosition.CenterScreen; FormStartPosit ...

  2. C#(winform)设置窗口置顶

    只要设置窗体的TopMost属性即可: registerForm.TopMost = true;

  3. STIL文件(DFT/IC测试方向)

    相信很多工程师,特别是刚入行或准备入行的兄弟们或多或少听过测试相关的东西.如果你想做DFT工程师的,测试工程师的,而对于设计/验证工程师们如果能了解下STIL文件的原理,在和DFT/测试工程师聊技术聊 ...

  4. 动态rem解决移动前端适配

    背景 移动前端适配一直困扰很多人,我自己也是从最初的媒体查询,到后来的百分比,再到padding-top这种奇巧淫技,再到css3新单位vw这种过渡转变 但这些都或多或少会有些问题,直到使用了动态re ...

  5. js文件加载太慢,JavaScript文件加载加速

    原文出自:https://blog.csdn.net/seesun2012 js脚本加载太慢,JavaScript脚本加载加速(亲测有效) 测试背景: JS文件大小:6.1kB 传统形式加载js文件: ...

  6. Devexpress GridView增加CheckBox列

    参考DEV官网代码做了一个增加checkbox列效果: #region 方法:设置GridView数据绑定        public void GridDataBind()        {     ...

  7. c#参数修饰符-out

    out 关键字通过引用传递参数. 方法定义和调用方法必须显式使用out关键字: 调用方法时参数不必初始化,方法内必须对其赋值: 参数中可以声明多个out修饰的参数. 例: public void Us ...

  8. 系统分析与设计 homework2

    1. 简述瀑布模型.增量模型.螺旋模型(含原型方法)的优缺点. 瀑布模型 优点: 降低了软件开发的复杂度,提高软件开发过程中的透明性,提高软件开发的可管理性. 为项目提供了按阶段划分的检查点. 当前一 ...

  9. poj 1833 排列 STL 全排列公式

    排列 Time Limit: 1000MS   Memory Limit: 30000K Total Submissions: 15173   Accepted: 6148 Description 题 ...

  10. Oracle数据库基本操作 (六) —— 数据的导出与导入

    一.cmd 下登录oracle数据库下的指定用户 方式一:命令行明文连接登录 打开cmd,输入:sqlplus/nolog 输入:conn username/passworld@数据库实例名 方式二: ...