应用程序常常会需要保存和读取一些信息,这时就需要文件的读写操作。
在C#语言中,对文件的操作,我们不用考虑.net框架是如何对不同文件类型进行操作的,通过已有的接口直接进行文件的操作即可。
.net框架中,System.IO空间中已经提供了多种类型的文件操作类型。用于对数据文件和数据流的读写操作。
经常用到的类有:File、Stream(抽象类)、FileStream、BinaryReader、BinaryWriter、StreamReader、StreamWriter。
文件(file)和流(stream)即有区别又有联系。
文件是在各种媒质上(可移动磁盘、硬盘、CD 等)永久存储的数据的有序集合。它是一种进行数据读写操作的基本对象。通常情况下,文件按照树状目录进行组织,每个文件都有文件名、文件所在路径、创建时间、访问权限等属性。
流是字节序列的抽象概念,例如文件、输入输出设备、内部进程通信管道或者TCP/IP套接字等均可以看成流。流提供一种向后备存储器写入字节和从后备存储器读取字节的方式。
流操作是个很泛的概念,常见的流操作有IO。
流操作的存在是为了解决体积大的数据占用内存太大,简单而言就是分段操作,试想一下,如果没有流操作的机制,如果你的内存有2GB,你要下载一下2GB的文件岂不立马就塞满内存了。就文件操作而言,假设你好打开一个很大word文档,word软件并不会加载所有的文档,而只会加载当前显示的部分,这也是一种“分段操作”的理念,这样可以有效减少当前的内存占用具体操作而言,小文件可以不必使用流,但大文件使用流可以大大减少资源占用,也可以减少文件存取时占用的时间流操作主要就是读取和写入