第9章文件操作的利器——C#文件流(C#从入门到精通).pptVIP

  • 139
  • 0
  • 约9.54千字
  • 约 45页
  • 2016-08-06 发布于河南
  • 举报

第9章文件操作的利器——C#文件流(C#从入门到精通).ppt

第9章文件操作的利器——C#文件流(C#从入门到精通)

《ASP.NET 3.5网站开发从入门到精通》 第 9 章文件操作的利器——C#文件流 文件和流的概念和 FileStream类 读写文本文件 读写二进制文件 读写内存流 File类和 Directory类 第 9 章文件操作的利器——C#文件流 文件和流的概念和 FileStream类 读写文本文件 读写二进制文件 读写内存流 File类和 Directory类 9.1 操作文件的流模型--文件和流 文件流像自来水管道中的水流一样,让我们通过无形的管道来对磁盘文件进行操作,本章重点介绍如何利用C#文件流来操作磁盘文件。 9.1.1 文件和流的概念 C#中流的概念可以和生活中的“流”相对应。在生活中有水流、电流等,首先要有一个源头,还需要有传输的管道,水流有河床、水管等作为传输管道,电流有电线,而这些“流”都会有一个目的地,就是它的流向。C#中的流也需要有源头——文件,还需要有数据流入流出的管道以及数据的流向。 C#采用流模型读写文件里的数据,按照流的方向把流分为两种:输入流和输出流。输入流用于将数据读到程序可以访问的内存或变量中。输入流可以来自任何源,在此我们主要分析读取磁盘文件,可以理解为以文件为源,以内存为目的地。输出流用于向某些外部目标写入数据,可以是磁盘文件、打印设备或另一个程序。在此我们主要关注以内存为源,文件为目的地的输出流。 流是二进制字节序列的面向对象的抽象概念,.NET中用流进行输入输出操作。文件从广义上可看成是保存在磁盘上的二进制字节,是按一定格式存储的信息,能用流对文件进行操作,如:读取文件内容、将信息写入文件等。 Stream类是所有流类的抽象基类,它提供了流的基本功能。流是字节序列的抽象概念,如文件、输入/输出设备、内部进程通信管道或者TCP/IP套接字都可以看作流。 流涉及以下三个基本操作。 ⑴ 从流读取:读取是从流到数据结构(如字节数组)的数据传输。 ⑵ 向流写入:写入是从数据结构到流的数据传输。 ⑶ 支持查找:查找是对流内的当前位置进行查询和修改。 System.IO命名空间的类大致可分为以下三组。 ⑴ 操作流的类:包括文件流、内存流,以及读写这些流的类 ⑵ 操作目录的类:包括对文件夹目录进行创建、移动、删除等操作,以及对磁盘信息进行访问的类。 ⑶ 操作文件的类:包括对文件进行创建、移动、删除等操作,以及获取文件信息等 比较常用的类有:FileStream类、StreamReader类、StreamWriter类、BinaryReader类、BinaryWriter类、MemoryStream类、File类、FileInfo类、Directory类和DirectoryInfo类等,下面小节将对这些比较常用的类逐一介绍。 9.1.2 FileStream类 FileStream称为文件流,用于读取和写入文件,FileStream类的实例实际上代表一个磁盘文件。FileStream类继承于Stream类。下表列出了FileStream类的常见的成员及其说明。 下面对FileStream类成员中比较重要的进行详细介绍。 ⑴ Position属性。获取或设置此流的当前位置。属性值:此流的当前位置。 ⑵ Close()方法。在创建和使用完一个流后一定要将其及时关闭。 ⑶ Flush()方法。在调用Close()方法之前调用Flush()方法,可以将以前写入缓冲区的任何数据都复制到文件中,并且缓冲区被清除。 ⑷ Seek()方法。使用代码如下。 01 aFile.Seek(8,SeekOrigin.Begin) 构造FileStream类对象时的文件打开方式,如下表。 FileMode.Append 如果文件存在则打开,并把读写位置定位到文件末尾。如果文件不存在则创建新文件。这种方式只能和FileAccess.Write访问方式一起使用。 FileMode.Create 创建一个新文件。如果文件存在。则覆盖原有文件。 FileMode.CreateNew 创建一个新文件,如果文件存在则出现异常。 FileMode.Open 打开一个已有文件。 FileMode.OpenOrCreate 打开一个已有文件,如果文件不存在,则创建一个新文件。 FileMode.Truncate 打开一个已有文件。然后把文件的长度置为0。 构造FileStream流对象时的文件访问方式。 FileAccess.Read 对文件进行读访问,只能从文件中读数据。 FileAccess.ReadWrite 对文件进行读写访问。 FileAccess.Write 对文件进行写访问,只能向文件中写入数据。 下面的代码是打开一个现有文件并将信息显示到文本框中 01 openFi

文档评论(0)

1亿VIP精品文档

相关文档