六十四、基础框架(二十二)文件操作-基本文件操作
来源:互联网 发布:linux 系统添加wifi 编辑:程序博客网 时间:2024/05/30 23:39
如果 要对 任何文件 进行操作,都要 先 创建 一个NSFileManager类型的物件,也就是 文件管理器物件,并且 对 其 采取 适用于这类物件的措施。要创建 NSFileManager类型的物件,需要 向NSFileManager这类物件 发送 defaultManager这条消息,就像 这样:
这里 创建了 一个NSFileManager类型的物件,叫做 myFileManager。如果 要 从当前目录 删除 一个叫todolist的文件,那么 就要对 myFileManager这个物件 采取 removeFileAtPath:handler:这项措施:
你 可以检查removeFileAtPath:handler:这项措施所产生的结果 以确保 操作的成功:
如果 removeFileAtPath:handler:这项措施产生的结果 为 NO,则 显示出 相应的信息 以表示 操作失败。
进行 文件操作时,通过包含文件属性的辞典物件 你 可以设定 你所创建的文件的权限 或者 获取、改变 文件的信息。fileAttributesAtPath:traverseLink:这项措施 会将 文件属性 以辞典物件的形式 传递给 你。
下面的程序 示范了 一些基本的文件操作。在运行 这个程序之前,我 在可执行文件所在的目录 已经创建了 一个叫myFile的文本文件,这个文件 包含了 一行文本。
运行 这个程序,可以得到 这样的结果:
这个程序 首先 检查了 myFile这个文件 是否存在。如果 myFile这个文件 存在,则将 myFile这个文件 复制 一份,并且 命名为 myAnotherFile。然后 再 检查 文件myFile 和 文件myAnotherFile的内容 是否一致。有经验的UNIX用户 应该会注意到 在采取 copyPath:toPath: 或者 movePath:toPath:这样的措施时,你 不能只说明 目标目录,而 要 精确地 说明 目标文件的名称。
movePath:toPath:这项措施 可以将 文件 从一个目录 移动 到另外一个目录,也可以移动 整个目录。如果 这项措施的两个参数所指的文件 位于 同一个目录,那么 这项措施的作用 就是 为这个文件 重新 命名。
在进行 复制、重命名、移动操作时,目标文件 不能是 已经存在的文件。如果 目标文件 已经存在,那么 操作 就会失败。
在这个程序中 我 对 myFileManager这个物件 采取了 fileAttributesAtPath:traverseLink:这项措施,fileAttributesAtPath:traverseLink:这项措施 会将 其参数中的文件的属性 以辞典的形式 存储 在变量attributes当中。在attributes这个辞典物件当中,文件长度所对应的关键字 是 NSFileSize。所以 只要对 attributes这个辞典物件 采取 objectForKey:这项措施,并且 用 NSFileSize 充当 参数,就可以读取出 文件的长度。最后 还要采取 intValue这项措施 将 文件的长度 转换成 整数类型。
然后 我 对 myFileManager这个物件 采取了 removeFileAtPath:handler:这项措施 将 原始文件myFile 删除。
最后 我 向NSString这类物件 发送了 stringWithContentsOfFile:这条消息。NSString这类物件 会利用 stringWithContentsFile:这条消息中参数所指定的文件中的内容 创建 一个NSString类型的字符串物件。
在这个程序当中 如果 有 任何一项操作 失败,那么 return语句 就会得以执行,从而 中止 程序,并且 将 相应的非零的整数值 显示 在终端上。根据惯例,非零的整数值 用来代表 程序错误。不同的值 用来代表 不同类型的错误。
- 六十四、基础框架(二十二)文件操作-基本文件操作
- 七十一、基础框架(二十九)文件操作-文件操作柄,NSFileHandle这类物件
- Python基础--基本文件操作二
- 六十六、基础框架(二十四)文件操作-目录操作
- 六十八、基础框架(二十六)文件操作-路径操作
- 六十九、基础框架(二十七)文件操作-路径操作2
- [objective-c]—六十六、基础框架(二十四)文件操作-目录操作
- [objective-c]—六十六、基础框架(二十四)文件操作-目录操作
- (孙鑫 十二) 文件操作
- windows基础应用程序编程(十二)文件操作
- 文件IO的基本操作(二)
- 小白学Python(二) 基本文件操作
- 文件的基本操作二
- 六十三、基础框架(二十一)文件操作-NSFileManager这类物件
- 六十五、基础框架(二十三)文件操作-数据物件
- 六十七、基础框架(二十五)文件操作-列举 目录内容
- Python基础--基本文件操作
- 文件操作十二行
- git 图解
- C++类模板的三种特化
- Selenium WebDriver and browsers select file dialog
- Android平台Native开发与JNI机制详解
- JSTL实现for(int i)循环
- 六十四、基础框架(二十二)文件操作-基本文件操作
- Activity生命周期详解
- 亲。。。。。。我不存在!
- 信息检索和网络数据挖掘领域论文技术基础
- 自定义水平的进度条(效果很炫)ProgressBar
- selenium2 and webdriver Alert
- Spring 框架 IOC本质
- 六十五、基础框架(二十三)文件操作-数据物件
- CVPR2012文章整理