VB编程课件第9章.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《VB编程课件第9章.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VB 编程 课件
- 资源描述:
-
1、第第9章章 文件文件VB 2005提供了强大的文件访问与处理功能。它除了提供传统的文提供了强大的文件访问与处理功能。它除了提供传统的文件访问方式外,还可以使用件访问方式外,还可以使用System.IO命名空间访问文件,并且新命名空间访问文件,并且新增了一个性能更加强大的增了一个性能更加强大的My.Computer.FileSystem对象。对象。本章主要介绍文件的基本概念,以及在本章主要介绍文件的基本概念,以及在VB 2005中访问各种类型文中访问各种类型文件的方法。件的方法。9.1 文件的结构和文件的分类文件的结构和文件的分类文件是指存储在外部物理介质上的数据的集合。它可以永久性地保文件是指
2、存储在外部物理介质上的数据的集合。它可以永久性地保存数据。计算机操作系统是以文件为单位对数据进行管理的。存数据。计算机操作系统是以文件为单位对数据进行管理的。这一节主要介绍文件的结构和分类。这一节主要介绍文件的结构和分类。9.1.1 文件的结构文件的结构为了有效地存取数据,数据必须以某种特定方式存放,这种方式称为了有效地存取数据,数据必须以某种特定方式存放,这种方式称为文件的结构。基本的文件结构有:字符、字段、记录。为文件的结构。基本的文件结构有:字符、字段、记录。1. 字符(字符(Character)字符是数据的最小单位,是构成文件的最基本单位。字母、数字、字符是数据的最小单位,是构成文件的
3、最基本单位。字母、数字、特殊符号都可以看成是一个字符。特殊符号都可以看成是一个字符。2. 字段(字段(Field)字段也称为域,是指由某种数据类型及若干字符组成的一项数据,字段也称为域,是指由某种数据类型及若干字符组成的一项数据,通常表示特定含义。通常表示特定含义。3. 记录(记录(Record)记录是由一个或多个相关联的字段组成,是计算机处理数据的基本记录是由一个或多个相关联的字段组成,是计算机处理数据的基本单位。单位。 文件就是记录的集合。文件就是记录的集合。9.1.2 文件的分类文件的分类根据不同的分类标准,文件可分为不同的类型。根据不同的分类标准,文件可分为不同的类型。1. 根据数据性
4、质分类根据数据性质分类根据数据的性质,文件可以分为程序文件和数据文件。根据数据的性质,文件可以分为程序文件和数据文件。2. 根据数据的存储形式分类根据数据的存储形式分类根据数据的存储形式,文件可以分为顺序文件和随机文件。根据数据的存储形式,文件可以分为顺序文件和随机文件。3. 根据数据的编码分类根据数据的编码分类根据数据的编码,文件可以分为根据数据的编码,文件可以分为ASCII文件和二进制文件。文件和二进制文件。9.2 访问文件访问文件根据不同类型的文件,访问数据的方式也不相同。根据不同类型的文件,访问数据的方式也不相同。VB 2005提供了提供了三种文件访问模式:顺序访问模式、随机访问模式、
5、二进制访问模三种文件访问模式:顺序访问模式、随机访问模式、二进制访问模式。访问文件,基本操作步骤一般都须经过以下三步完成:式。访问文件,基本操作步骤一般都须经过以下三步完成:1) 首先打开文件,如果文件不存在应先创建文件。首先打开文件,如果文件不存在应先创建文件。2) 当文件打开后,就可以对文件进行读或写操作了。当文件打开后,就可以对文件进行读或写操作了。3) 当文件操作完毕,应该关闭文件。当文件操作完毕,应该关闭文件。9.2.1 使用传统的方式访问文件使用传统的方式访问文件VB 2005支持以前版本传统的文件访问方式。传统的文件访问方式支持以前版本传统的文件访问方式。传统的文件访问方式就是通
6、过调用就是通过调用VB系统提供的文件访问函数来访问文件。不同类型系统提供的文件访问函数来访问文件。不同类型的文件,访问时使用的函数也有所差异。常用的文件访问函数访问的文件,访问时使用的函数也有所差异。常用的文件访问函数访问的文件类型,见表。的文件类型,见表。函数名称函数名称 函数实现的操作函数实现的操作顺序访问顺序访问模式模式随机访问随机访问模式模式二进制访二进制访问模式问模式FileOpen 打开或创建文件打开或创建文件允许允许允许允许允许允许FileClose 关闭文件关闭文件允许允许允许允许允许允许Input从打开的顺序文从打开的顺序文件中读取数据件中读取数据允许允许允许允许不允许不允许
7、InputString返回打开文件字返回打开文件字符值符值允许允许不允许不允许不允许不允许LineInput从打开的顺序文从打开的顺序文件中读取一行数件中读取一行数据据允许允许不允许不允许不允许不允许Print、PrintLine将格式化的显示将格式化的显示数据写入顺序文数据写入顺序文件件允许允许不允许不允许不允许不允许Write、WriteLine将数据写入顺序将数据写入顺序文件文件允许允许不允许不允许不允许不允许9.2.1 使用传统的方式访问文件使用传统的方式访问文件1. 访问顺序文件访问顺序文件顺序文件访问模式的规则最简单,读取时从第顺序文件访问模式的规则最简单,读取时从第1条记录条记录
8、“顺序顺序”读读到最后一条记录,写入时也一样,不可以在数据间随意跳转。到最后一条记录,写入时也一样,不可以在数据间随意跳转。将数据写入顺序文件,通常有将数据写入顺序文件,通常有3个步骤:打开、写入和关闭。从顺个步骤:打开、写入和关闭。从顺序文件读取数据到内存的步骤也有序文件读取数据到内存的步骤也有3个步骤:打开、写入和关闭。个步骤:打开、写入和关闭。(1) 打开文件打开文件打开或创建文件调用打开或创建文件调用FileOpen函数,函数,其语法格式如下:其语法格式如下:FileOpen (文件编号文件编号,文件名文件名,模式模式 ,存取方式存取方式,共享方式共享方式,记录长度记录长度 )(2)
9、关闭文件关闭文件关闭文件调用关闭文件调用FileClose函数,其语法格式如下:函数,其语法格式如下:FileClose ( 文件编号文件编号 ,文件名文件名, )9.2.1 使用传统的方式访问文件使用传统的方式访问文件【例【例9-1】打开】打开C盘下的盘下的file.txt文件,并显示该文件的文件号、文件名和字符数,文件,并显示该文件的文件号、文件名和字符数,然后关闭。然后关闭。Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
10、Dim arr(10) As Single Dim fileName As String Dim fileNum As Integer fileName = InputBox$(请输入要打开的文件名:请输入要打开的文件名:) 输入要打开的文件输入要打开的文件 fileNum = FreeFile() 得到文件号得到文件号 FileOpen(fileNum, fileName, OpenMode.Output) 打开指定文件打开指定文件 显示文件信息显示文件信息 MessageBox.Show(打开文件名是打开文件名是 + fileName + 的文件,该文件的文件号是的文件,该文件的文件号是
11、+ Str(fileNum) FileClose(fileNum) 关闭文件关闭文件End Sub9.2.1 使用传统的方式访问文件使用传统的方式访问文件(3) 写操作写操作将数据写入磁盘文件调用将数据写入磁盘文件调用Print、PrintLine、Write和和WriteLine函函数。这数。这4个函数的格式相同,其语法格式如下:个函数的格式相同,其语法格式如下:Print (文件编号文件编号 , Output )PrintLine (文件编号文件编号 , Output )Write (文件编号文件编号 , Output )WriteLine (文件编号文件编号 , Output )9.2.
12、1 使用传统的方式访问文件使用传统的方式访问文件【例【例9-2】使用】使用Print、PrintLine函数向函数向file.txt文件中写入数据。文件中写入数据。Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click FileOpen(1, c:file.txt, OpenMode.Output) 打开指定文件打开指定文件 Print(1, 大家大家) 写入数据,不包括换行符写入数据,不包括换行符 Print(1, 好!好!) Pri
13、ntLine(1) 写入换行符写入换行符 PrintLine(1, 欢迎使用欢迎使用, TAB(), VB 2005!) 写入数据,包括换行符写入数据,包括换行符 PrintLine(1, VB 2005, TAB(), 是是VB的最新版本。的最新版本。) PrintLine(1, SPC(3), 它具有强大的文件操作功能。它具有强大的文件操作功能。) FileClose(1) 关闭文件关闭文件End Sub 9.2.1 使用传统的方式访问文件使用传统的方式访问文件【例【例9-3】使用】使用Write、WriteLine函数向函数向newfile.txt文件中写入数据。文件中写入数据。Priv
14、ate Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click FileOpen(1, c:newfile.txt, OpenMode.Output) 打开指定文件打开指定文件 Write(1, Visual Studio 2005) 写入数据,不包括换行符写入数据,不包括换行符 Write(1, 是新一代的开发平台。是新一代的开发平台。) WriteLine(1) 写入换行符写入换行符 WriteLine(1, 它它, TAB(), 功能强大,功能强
15、大,) 写入数据,包括换行符写入数据,包括换行符 WriteLine(1, SPC(3), 使用简单,使用简单,) WriteLine(1, TAB(10), 是程序开发人员的最好选择。是程序开发人员的最好选择。) FileClose(1) 关闭文件关闭文件End Sub9.2.1 使用传统的方式访问文件使用传统的方式访问文件(4) 读操作读操作读取顺序文件的操作常用到读取顺序文件的操作常用到Input、LineInput和和InputString函数。函数。其语法格式如下:其语法格式如下:Input (文件编号文件编号,变量名变量名)LineInput (文件编号文件编号)InputStri
16、ng (文件编号文件编号,表达式表达式)9.2.1 使用传统的方式访问文件使用传统的方式访问文件【例【例9-4】使用】使用Input、LineInput和和InputString函数读取函数读取file.txt和和newfile.txt文文件中的数据。件中的数据。Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 调用调用Input函数事件函数事件 Dim str1 As String FileOpen(1, c:newfile.t
17、xt, OpenMode.Input) 打开指定文件打开指定文件 Input(1, str1) 读取数据赋给变量读取数据赋给变量str1 MessageBox.Show(str1) 显示读取数据显示读取数据 Input(1, str1) MessageBox.Show(str1) Input(1, str1) MessageBox.Show(str1) Input(1, str1) MessageBox.Show(str1) FileClose(1) 关闭文件关闭文件End Sub9.2.1 使用传统的方式访问文件使用传统的方式访问文件Private Sub Button2_Click(ByV
18、al sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click 调用调用LineInput函数事件函数事件 Dim str2 As String FileOpen(1, c:newfile.txt, OpenMode.Input) 打开指定文件打开指定文件 str2 = LineInput(1) 读取数据赋给变量读取数据赋给变量str2 MessageBox.Show(str2)End SubPrivate Sub Button3_Click(ByVal sender As System.Object
19、, ByVal e As System.EventArgs) Handles Button3.Click 调用调用InputString函数事件函数事件 Dim str3 As String FileOpen(1, c:newfile.txt, OpenMode.Input) 打开指定文件打开指定文件 str3 = InputString(1, 10) 读取数据赋给变量读取数据赋给变量str3 MessageBox.Show(str3)End Sub9.2.1 使用传统的方式访问文件使用传统的方式访问文件(5) 几个重要的文件函数几个重要的文件函数1) Loc函数。函数。Loc函数返回一个函数
20、返回一个Long数据类型的值,该值指定打开文数据类型的值,该值指定打开文件中当前的读件中当前的读/写位置。写位置。2) LOF函数。函数。LOF函数返回函数返回Long数据类型的值,表示用数据类型的值,表示用FileOpen函数函数打开的文件的大小(以字节为单位)。打开的文件的大小(以字节为单位)。3) Eof函数。函数。Eof函数表示当到达以随机或顺序函数表示当到达以随机或顺序Input模式打开的文件尾模式打开的文件尾时,返回时,返回Boolean数据类型值数据类型值True。4) FileCopy函数。函数。FileCopy函数将指定的文件复制到指定路径。函数将指定的文件复制到指定路径。9
21、.2.1 使用传统的方式访问文件使用传统的方式访问文件【例【例9-5】使用文件函数,确定】使用文件函数,确定file.txt文件当前读写的位文件当前读写的位置,该文件的大小和长度,并将置,该文件的大小和长度,并将newfile1.txt文件其拷贝文件其拷贝到到D盘下,重命名为盘下,重命名为newfile1.txt。Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 调用调用Loc函数事件函数事件 FileOpen(1, c:file
22、.txt, OpenMode.Output) MsgBox(Loc(1) FileClose(1)End SubPrivate Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click 调用调用LOF函数事件函数事件 FileOpen(1, c:file.txt, OpenMode.Output) MsgBox(LOF(1) FileClose(1)End SubPrivate Sub Button3_Click(ByVal sender As Syst
23、em.Object, ByVal e As System.EventArgs) Handles Button3.Click 调用调用FileLen函数事件函数事件 Dim str1 As String str1 = FileLen(c:newfile.txt) MsgBox(str1)End SubPrivate Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click 调用调用FileCopy函数事件函数事件 FileCopy(c:newfile.tx
24、t, d:newfile1.txt)End Sub9.2.1 使用传统的方式访问文件使用传统的方式访问文件2. 访问随机文件访问随机文件在随机访问模式中,文件的存取是按记录进行操作的,每个记录都在随机访问模式中,文件的存取是按记录进行操作的,每个记录都有记录号并且长度全部相同。在程序的变量说明部分采用用户自定有记录号并且长度全部相同。在程序的变量说明部分采用用户自定义类型说明语句义类型说明语句StructureEnd Structure,首先定义记录的结构,首先定义记录的结构类型,然后再将变量说明成该类型,这样就为这个变量申请了内存类型,然后再将变量说明成该类型,这样就为这个变量申请了内存空间
25、,用于存放随机文件中的记录。空间,用于存放随机文件中的记录。(1) 打开和关闭文件打开和关闭文件打开随机文件仍然调用打开随机文件仍然调用FileOpen函数,与打开顺序文件不同的是函数,与打开顺序文件不同的是使用使用Random模式,并且需要指明每条记录的长度模式,并且需要指明每条记录的长度RecordLength值,即记录中各字段长度之和,也与程序首部定义的结构类型变量值,即记录中各字段长度之和,也与程序首部定义的结构类型变量的长度相同。关闭随机文件仍然调用的长度相同。关闭随机文件仍然调用FileClose函数。函数。9.2.1 使用传统的方式访问文件使用传统的方式访问文件(2) 读写操作读
展开阅读全文