【好程序员笔记分享】——文件和目录处理

来源:互联网 发布:java choice用法 编辑:程序博客网 时间:2024/05/18 15:30

<A href="http://www.goodprogrammer.org/" target="blank">ios培训</A>------我的objective-c笔记,期待与您交流! 

文件是Objective-C程序设计中是比较重要的一个概念。文件一般指存储在外部介质中的数据的集合。通过文件我们可以把信息永久存储起来。本章主要介绍文件中的读写和对数据的操作,目录操作等。

一·文件的操作

由于程序中常用到对文件的大量操作。所以基础框架上的NSFileManager提供了很多方法来处理文件。

1·创建文件

在对文件进行处理之前必须先要创建一些文件。可以使用Xcode来创建我们使用的文件。单击“File”|“New”|“NewFile”命令,在弹出的文件选择类型
对话框中选择Other中的Empty File类型的文件。在弹出的文件保存名称和保存位置对话框中输入文件的名字。将文件放到执行程序可以访问到的目录下,本书选择的是项目名/Buid/Debug目录下。创建好文件以后,可以手动在文件中写入一些内容。

2·文件的使用

当文件创建好以后就可以对文件进行一些操作了。在对文件进行操作时,应先将文件操作的头文件写入。

1)创建管理对象

在操作文件之前,将文件操作的头文件写入,还需要创建一个文件管理对象。所有的文件和目录操作都是通过这个对象进行的。

2)测试文件是否存在

创建好文件以后,要确定所创建的文件是否存在,可以使用fileExistsAtPath来对文件是否存在进行判断。

[文件管理对象 fileExistsAtPath:文件名]

使用形式fileExistsAtPath返回BOOL值。当文件存在时返回“YES”,当文件不存在时返回“NO”。

3)文件的复制

copyPath是将源文件及其源文件中的内容进行复制。


4)比较文件的内容是否一致


当我们要对两个文件的标识。大小及文件中的内容进行比较时,可以采用contentsEqualAtPath()方法。

,需要注意文件名1和文件名2必须是同名的,它们的大小及文件的内容必须一致。

5)文件的删除

当我们不再使用一些文件时,应当将文件及时删除,以免造成空间的浪费,便于文件的管理。我们可以使用removeFileAtPath()方法将文件删除。


6)移动文件


7)获取文件的属性

当要查看文件的属性时,可以使用fileAttributesAtPath()方法

3·对文件数据的操作

我们知道了对文件的操作以后还需要对文件中的数据进行操作。接下来主要介绍对文件中数据的操作。在对文件中的数据进行操作时,首先要进入数据对象的头文件。

1)数据对象的创建

NSdata *数据对象名;

2)数据的输出

使用stringWithContentsOfFile()可以对文件中的数据进行输出。

3)数据的读取

读取文件中的数据时常常用到contentsAtPath()方法

[文件管理对象 contentsAtPath:文件名]

4)数据的写入


4·文件的读写

1)创建

当我们对文件的读写进行操作时,首先为文件创建一个文件读写对象,所有关于文件读写的方法都在这个对象中进行,文件读写对象的创建形式:

NSFileHandle *文件读写对象

文件读写对象可以创建一个,也可以创建多个,在创建多个文件读写对象时,每一个文件读写对象前面必须加上“*”号,文件读写对象和文件读写对象之间必须要用“,”号分
隔。

2)打开

当要对文件进行打开时,方法有三种:一是为进行读取操作打开一个文件fileHandleForReadingAtPath(),二是为进行写入操作打开一个文件ileHandleForWritingAtPath(),三是为进行更新操作打开一个文件fileHandleForUpdatingAtPath()。

3)数据的读取和写入操作
当我们对文件中的数据进行读取

当我们对文件中的数据进行读取时,可以从开头一直读到尾,也可以读取指定大小的文件内容。

数据从头读到尾:readDataToEndOfFile()方法

文件的写入:用writeData()方法

读取指定大小的字节:用readDataOfLength()方法

4·关系文件

当我们对一个打开的文件操作完毕以后,就要将文件关闭。关闭文件的方法是closeFile()。

[对象文件名 closeFile()]

二·目录操作

1·返回当前目录

1)要查看文件的当前目录,可以使用currentDirectoryPath()

[文件管理对象 currentDirectoryPath]

2)更改当前目录

如果要对当前目录进行修改,可以使用changeCurrentDirectoryPath()方法。

[文件管理对象 changeCurrentDirectoryPath:文件名]

3)创建新目录

createDirectoryAtPath()方法用来创建新的目

2·目录显示

1)枚举目录的内容

枚举实际上是将变量的值一一列举出来。枚举类型的定义形式

emum {male ,female  }

定义枚举类型时必须要以关键字enum开头。将枚举的变量用花括号括起来。当我们要将目录中的内容进行枚举时,也就是将目录中的内容进行一一列出。使用枚举目录中的内容的方法可以采用enumeratorAtPath()方法。

2)列出目录的内容

directoryContentsAtPath()可以对目录的内容就行列出:

[文件管理对象 directoryContentsAtPath:目录]

3)临时目录

为了满足某种需要我们要拥有一些临时文件,这些临时文件可以通过获得临时目录来创建,或者从主目录中读取文件。使用NSTemporaryDirectory方法返回临时目录。




0 0
原创粉丝点击