第10章 文件读写和管理

上传人:豆浆 文档编号:52880637 上传时间:2018-08-26 格式:PPT 页数:21 大小:2.06MB
返回 下载 相关 举报
第10章 文件读写和管理_第1页
第1页 / 共21页
第10章 文件读写和管理_第2页
第2页 / 共21页
第10章 文件读写和管理_第3页
第3页 / 共21页
第10章 文件读写和管理_第4页
第4页 / 共21页
第10章 文件读写和管理_第5页
第5页 / 共21页
点击查看更多>>
资源描述

《第10章 文件读写和管理》由会员分享,可在线阅读,更多相关《第10章 文件读写和管理(21页珍藏版)》请在金锄头文库上搜索。

1、第10章 文件读写和管理, 了解文件的分类 掌握文本文件和二进制文件的读写技术 掌握文件和文件夹的管理方法,10.1 文件和System.IO模型概述,按文件中的数据格式,可分成“二进制文件”和“文本文件”;按文件的存取方式,可分成“顺序文件”和“随机文件”。 (1) 顺序文件顺序文件中的数据是一个接一个顺序地存放的,而且只记录第一个数据的存储位置。 (2) 随机文件随机文件以“记录”的格式来存储数据,所谓记录,其实就是由一组相互关联的字段组合成的逻辑单位,它类似于数据库中的记录。 (3) 文本文件在文本文件中,每个字符作为一个ASCII码或Unicode码存放,占一个或两个字节。 (4) 二

2、进制文件二进制文件是把内存中的数据按照原样保存在外部存储器上,可以直接读取或修改二进制文件中的任意字节。,10.1.1 文件的分类,10.1 文件和System.IO模型概述,在VBNET中,有3种访问文件的方法,分别是:使用VB传统语句和函数直接访问文件;通过文件系统对象模型(FSO)访问文件;使用.NET的System.IO模型访问文件。用户最常用的是第三种,所以本章主要介绍使用.NET的System.IO模型访问文件。,10.1.2 访问文件的方式,10.1.3 System.IO模型概述,System.IO实际上是一个文件操作的类库,这些类提供了多种对文件的读写方法,以及对文件和文件夹

3、的管理方法,这些类被声明在System.IO命名空间中,要使用这些类,必须引入该命名空间,其中常用的类及其功能如表10-1所示。,表10-1 System.IO模型中常用的类,10.2 文件的读写操作,StreamReader类和StreamWriter类分别以流的方式读写文本文件,读写时可以指定字符的特定编码。默认编码为 UTF-8,而不是本地系统的 ANSI 编码。UTF-8 可以正确处理 Unicode 字符并在各主机的操作系统中提供一致的结果。读写文本文件的基本步骤为:(1)使用New方法创建StreamReader/StreamWriter对象,将它与文本文件关联(打开文件的数据流通

4、道)。 (2)调用对象的成员方法从文件中读写字符 (3)关闭StreamReader/StreamWriter对象和数据流。,10.2.1 文本文件的读写操作,10.2 文件的读写操作,1StreamReader类StreamReader又称为读取器,它提供了多个用于创建对象和读取文件的方法 。【例10-1】读取文本文件,将其内容显示在窗体中。,图10-1 读取文本文件,具体操作步骤和源程序参见教材,10.2 文件的读写操作,(1) New方法建立StreamReader对象与文件的关联,以及打开数据流通道,是通过向New方法传递参数完成的。,表10-2 StreamReader类的New方法

5、,注意:调用New方法而不指定字符编码,则程序采用默认的UTF-8编码读取文件。,10.2 文件的读写操作,(2) FileStream类 FileStream类用于创建指向某个文件的流对象,基本的书写形式为: Dim fs as New FileStream( “D:VSChapter10文本文件.txt“, FileMode.Open, FileAccess.ReadWrite ) 第一个参数为文件全路径名。第二个参数为FileMode枚举类型值,用于指定访问文件的模式,第三个参数为FileAccess枚举类型值,用于指定访问文件的权限,表10-3 FileMode值及其说明,表10-4

6、FileAccess值及其说明,10.2 文件的读写操作,(3) 读取方法,【例10-2】修改例10-1,用其它方法读取文件。 设计界面如图10-2,点击第一个按钮,通过循环从文件中一个一个读取字符,直到文件结尾,StreamReader类中有一个只读属性EndOfStream,其值为true表示已到文件结尾,其值为false表示未到结尾。点击第二个按钮,读取文件的前10个字符到Char型数组。点击第三个按钮,通过循环一行一行读取字符,直到结尾。,图10-2 读取文本文件,10.2 文件的读写操作,2StreamWriter类 StreamWriter又称为写入器,用于向文本文件中写入字符,也

7、可以指定字符的编码方式。 (1) StreamWriter类的New方法,(2) StreamWriter类写文件的方法,注意:Write和WriteLine都是重载方法,它们可以接受各种类型的参数,例如下面几种重载形式。StreamWriter.Write(Int32)StreamWriter.Write(Double)StreamWriter.Write(String)StreamWriter.Write(Char ),10.2 文件的读写操作,【例10-3】设计窗体如图10-3,将左边文本框的数据写入文件D:VSChapter10文本文件2.txt中,在右边文本框中显示文件的内容。,图1

8、0-3 写入文本文件,具体操作步骤和源程序参见教材,10.2 文件的读写操作,二进制文件通常扩展名为“dat”,一般利用BinaryReader类从二进制文件中读取数据,利用BinaryWriter类向二进制文件中写入数据。,10.2.2 二进制文件的读写操作,1BinaryReader类 (1) BinaryReader类的New方法,(2)BinaryReader类的常用方法,10.2 文件的读写操作,(2)BinaryReader类的常用方法,2BinaryWriter类,以二进制形式将基本类型的数据写入文件,并支持特定的编码。该类只有一个Write方法用于写文件,但它有多种重载形式,可

9、以将任意类型的数据写入文件。,【例10-4】依次将Integer型数据65535,String型数据“似水年华”(该字符串占10个字符位),Double型数据3.1416写入文件D:VSChapter10二进制文件.dat,再分别读取它们,显示在文本框中。运行结果如图10-4所示。,图10-4 读写二进制文件,1File类和FileInfo类这两个类主要用于文件操作,但它们是有区别的:在应用程序中使用File类不必创建类的实例,就可以调用它的方法,而FileInfo类中的方法都是实例方法,必须在创建实例后才能调用。,10.3 文件及文件夹的管理,1File类和FileInfo类,10.3 文件

10、及文件夹的管理,2. Directory类与DirectoryInfo类 这两个类主要用于文件夹操作,都提供了一些用于创建文件夹、移动文件夹和遍历文件夹的方法。,10.3 文件及文件夹的管理,【例10-5】在“D:VSChapter10”路径下创建“教师档案”目录,在该目录下创建若干文本文件,每个文件录入一名教师的资料,文件名为教师的姓名,再创建一个“档案汇总”目录,在该目录中创建“汇总文件”,这个文件包含所有教师的资料以及这些资料所在文件的创建时间,接着创建“档案备份”目录,将“汇总文件”和所有教师的档案复制到“档案备份”目录。设计操作界面如下图,点击“建立目录”区域的三个链接,会在“D:V

11、SChapter10”路径下创建相应的文件夹,在“录入教师资料”区域输入每位教师信息,点击按钮则在“教师档案”目录中新建以“姓名”命名的文本文件,并将教师信息写入该文件,文件的内容和“教师档案”目录中的内容如图10-6、10-7所示。点击“资料汇总”区域中的2个链接,可在“档案汇总”目录中生成汇总文件以及将所有文件复制到“档案备份”文件。汇总文件的内容和“档案备份”目录中的内容如10-8、10-9所示。,10.4 综合实例,图10-5 管理文件和文件夹,10.4 综合实例,图10-6 教师个人档案,图10-7 教师档案目录中的文件,图10-8 汇总文件内容,图10-9 档案备份目录中的文件,具

12、体操作步骤和源程序参见教材,10.5 实训项目十,在D盘创建文件夹Stu10,按要求完成如下实训练习,保存在D: Stu10路径下。完善【例10-5】教师档案管理程序,设计一个可以浏览、更新和删除教师档案的界面,如图10-12所示。要求实现以下功能: (1)通过选择界面上方的下拉列表(ComboBox1),可以查看全部教师的档案,也可以查看某个系部教师的档案,选中某个系,就在中间的列表控件(ListBox1)显示该系的教师档案,如图10-13所示。 (2)选中列表控件的某行记录,在下方“教师档案更新”区域,显示该教师各项信息。 (3)可以在“教师档案更新”区域修改各项信息,点击“更新”按钮,则

13、将更新后的档案写入对应文件。例如,图10-14将“王刚”老师的年龄改为31,他的档案所在文件的内容也更新了,如图10-15。 (4)点击“删除”按钮,可以删除当前这个档案所在的文件。,10.5 实训项目十,图10-12 教师档案管理界面,图10-13 按系部浏览教师档案,图10-14 更新档案,图10-15 更新后的档案写入文件,10.5 实训项目十,【操作提示】 (1)本程序所操作的文件,全部在【例10-5】建立的“教师档案”目录中,每位教师对应一个文本文件,姓名就是文件名。 (2)编写Form_Load事件处理过程,读取所有教师的档案文件,整理成图10-12所示的格式(每个档案占一行)加载到列表控件中(ListBox1) (3)为上方的下拉列表(ComboBox1)编写SelectedIndexChanged事件处理过程,读取所有教师的档案,但只保留被选中的系部的教师档案,加载到列表控件中。 (4)为列表控件(ListBox1)编写SelectedIndexChanged事件处理过程,将被选中的教师档案显示在下方的“教师档案更新”区域。 (5)为“更新”按钮编写Click事件处理过程,将档案中各字段的值写入对应的文件。 (6)为“删除”按钮编写Click事件处理过程,将对应的档案文件删除。,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号