VB语言程序设计教程 教学课件 ppt 作者 杨忠宝 康顺哲 第09章 文件

上传人:E**** 文档编号:89399443 上传时间:2019-05-24 格式:PPT 页数:27 大小:276.50KB
返回 下载 相关 举报
VB语言程序设计教程 教学课件 ppt 作者  杨忠宝 康顺哲 第09章 文件_第1页
第1页 / 共27页
VB语言程序设计教程 教学课件 ppt 作者  杨忠宝 康顺哲 第09章 文件_第2页
第2页 / 共27页
VB语言程序设计教程 教学课件 ppt 作者  杨忠宝 康顺哲 第09章 文件_第3页
第3页 / 共27页
VB语言程序设计教程 教学课件 ppt 作者  杨忠宝 康顺哲 第09章 文件_第4页
第4页 / 共27页
VB语言程序设计教程 教学课件 ppt 作者  杨忠宝 康顺哲 第09章 文件_第5页
第5页 / 共27页
点击查看更多>>
资源描述

《VB语言程序设计教程 教学课件 ppt 作者 杨忠宝 康顺哲 第09章 文件》由会员分享,可在线阅读,更多相关《VB语言程序设计教程 教学课件 ppt 作者 杨忠宝 康顺哲 第09章 文件(27页珍藏版)》请在金锄头文库上搜索。

1、第章 文件操作,学习要点 文件的分类 文件操作语句和函数 顺序文件的读写 随机文件的读写与记录的操作,9.1文件的基本概念,9.1.1文件的结构 1.Visual Basic的文件由记录组成,记录由字段组成,字段又由字符组成。 字符(Character):是构成文件的最基本单位。字符可以是数字、字母、特殊符号或汉字。 字段(Field):也称域。字段由若干个字符组成,用来表示一项数据。例如邮政编码“450002”就是一个字段,它由6个字符组成;而姓名“张前”也是一个字段,它由2个汉字组成。 记录(Record):由一组相关的字段组成。例如在通信录中,每个人的姓名、单位、地址、电话号码、邮政编码

2、等构成一个记录。 文件(File):文件由记录构成,一个文件含有一个以上的记录。,计算机的数据文件按数据的存放方式分为三种类型: 1. 顺序型文件 连续存放的文本数据。此文件中通常记录与记录之间的分界符为回车符;记录中字段与字段之间的分界符为逗号。 2. 随机型文件 有固定记录结构长度的文本数据。随机文件的每一个记录都有固定的长度,每一个记录都有一个记录号,在存入数据时,只需指明是第几个记录号,就可以把数据存入制定位置。 二进制型文件 存储二进制数据。数据以二进制格式保存,存储单位为字节。,文件概述,顺序文件,1顺序文件的打开 顺序文件按行存储,依次将记录顺序存储,当读出某些数据时,需要从第一

3、条记录开始读取数据,直到找到所需要的记录为止。 在对文件进行操作之前,必须打开文件,同时要通知操作系统对文件进行读操作还是写操作,将数据存到什么地方。 语法格式:,Open “文件名” For 模式 As # 文件号 len=记录长度,1)文件名:文件名可以是字符串常量也可以是字符串变量。 2)模式: OutPut:打开一个文件,对该文件进行写操作,即将数据写入磁盘文件。Output选项模式打开一个不存在的文件时,VB会在磁盘上创建一个新的顺序文件。文件打开后文件的指针位于文件开头,准备向文件写入数据。若磁盘上有同名文件则该文件将被覆盖。 Input:打开一个文件,对该文件进行读操作,即将数据

4、从文件中读入内存。注:文件必须存在,否则将出现错误。 Append:打开一个文件,在该文件末尾追加记录。打开或创建一个新的顺序文件,文件打开后文件指针位于文件的末尾准备向文件的尾部追加数据。若磁盘上没有该文件,则创建一个新的文件。,顺序文件,3)文件号:文件号是一个介于1-511之间的整数,打开一个文件时需要指定一个文件号,这个文件号就代表该文件,直到文件关闭后这个号才可以被其他文件所使用,同时被打开的每个文件的文件号不能同。 例 : 含义是:打开D: sj目录下的aaa文件供写入数据,文件号为# 1。 含义是:打开当前目录下的bbB.txt文件供读数据,文件号为# 2。,顺序文件,Open

5、“D:sjaaa“ For Output As #1,Open “ bbB.txt“ For Input As #2,2. 顺序文件的关闭 结束各种读写操作后,必须将文件关闭,否则会造成数据丢失。关闭文件的命令是Close语句。 语法格式: 说明: (1)文件号是指利用Open语句打开文件时指定的文件号。 (2)此语句可以同时关闭多个已打开的文件,用逗号分隔文件号。 (3)若省略文件号,表示关闭所有已经打开的文件,顺序文件,Close #文件号1,#文件号2,例 : Close #1,#2,#3 关闭文件号分别为1、2、3的文件。 Close 关闭所有已打开的文件。,3.顺序文件的写操作 以O

6、utPut和Append模式打开的文件可以进行写操作,对顺序文件能够进行写操作的语句有Print #和Write #两个,用来向已经打开的顺序文件写入数据。 1Print #语句 语法格式: 说明:此语句的功能和Print语句类似,不同的是,此处是将输出列表项写入到文件中。 (1)输出列表项可以是常量、变量或表达式,输出列表项多于一个时,各项之间可以用逗号或分号分隔,其含义与Print语句的紧凑格式和标准格式相同。 (2)在输出列表项中也可使用Spc(n)函数向文件中写n个空格,或使用Tab(n)函数指定其后的输出项从第n列输出。,顺序文件,Print #文件号, 输出列表,2Write #语

7、句 语法格式: Write #语句的功能和Print #语句的功能基本相同,都是将输出项写入指定文件中,不同的是: (1)Write #语句在文件中的各个输出项都以紧缩格式输出,并自动在输出项之间插入逗号分隔。 (2)Write #语句为文件中的字符串加上双引号。,顺序文件,Write #文件号, 输出列表,4. 顺序文件的读操作 可以使用Input #语句、Line Input #语句或者Input()函数从文件中读出(输入)数据。 与读文件操作有关的两个函数: 1Input #语句 语法格式: 说明:该语句作用是将从文件中读出的数据分别赋给指定的字符变量。变量个数多于一个时,用逗号分隔。,

8、顺序文件,LOF(n):返回某文件n的字节数。,EOF(n):检查文件n是否到达文件尾。,Input #文件号,变量列表,顺序文件,2. Line Input #语句 语法格式: 该语句从指定文件号的文件中读出一行数据并将其赋值给字符串变量。 注意: Line Input #语句与Input#语句类似,但Input#语句读取的是数据项,而Line Input #语句读取的是一行数据。 3. Input()函数 语法格式: 该语句可以读取指定字符长度的数据。也可写为Input$()。,Line Input #文件号,变量列表,Input(length,#),9.2顺序文件的存取 9.2.1 顺序

9、文件的打开与关闭 1.打开文件使用 Open 语句。 格式:Open 文件名 For 方式 锁定 As #文件号 Len = 记录长度 2.Close语句的一般格式为: Close # 文件号 ,# 文件号,9.2.2 写(存)顺序文件 1. Print #语句 Print # 语句用来将一个或多个格式化的数据写入顺序文件. 格式:Print # 文件号, 表达式列表 其中,“文件号”对应已经用 Open 语句打开的文件(Output 或 Append 方式),“文件号”和后面的逗号不能省略。“表达式列表”由以逗号或分号(或空白)分隔的输出项表达式组成。用分号分隔时,后面的数据跟在上一数据的后

10、面输出。采用逗号分隔时,输出的数据按制表位对齐。,2. Write #语句 Write #语句用来将数据写入文件。 格式:Write #文件号, 表达式列表 说明:Write #语句的用法和 Print #语句相似,不同的是: (1)输出的数据采用紧凑格式存放,数据项之间自动用逗号分开; (2)输出的字符串自动用引号扩起来。 例如:Write #1,“abc“,-123,456 输出结果是:“abc“,-123,456。,【例9.1】建立一个通讯录。 创建一个标准 EXE 文件,在 Form1 窗体中添加 4 个标签、3 个文本框(txtName、txtBirth、 txtAddr)、2 个单

11、选按钮(optFemal、optMale)、2 个命令按钮(cmdSave、cmdExit),各 控件的属性设置参考图 9-1。,程序代码如下: Dim iFile As Integer 文件号 Private Sub Init() Txtname.Text = “ optFemal.Value = True Txtbirth.Text = “ Txtaddr.Text = “ End Sub Private Sub cmdExit_Click() End 退出程序 End Sub Private Sub cmdSave_Click() Dim sSex As String If Not Is

12、Date(Txtbirth.Text) Then 数据格式控制 MsgBox “生日非法!请输入年-月-日“ Txtbirth.SetFocus Exit Sub End If If optFemal.Value = True Then sSex = “男“ Else sSex = “女“ Write #iFile, Txtname.Text, sSex, CDate(Txtbirth.Text), Txtaddr.Text 写文件 Init 初始化 End Sub,Private Sub Form_Load() Init 初始化 iFile = FreeFile Open “d:txl.tx

13、t“ For Output As iFile 打开文件 End Sub Private Sub Form_Unload(Cancel As Integer) Close iFile 关闭文件 End Sub,9.2.3 读(取)顺序文件 从顺序文件中读取数据可以使用 Input #语句、Line Input #语句或 Input 函数。 1. Input #语句 格式:Input #文件号,变量名表 2. Line Input #语句 格式:Line Input #文件号,字符串变量名 功能:顺序文件中读取一整行字符并赋给后面的变量。,【例9.2】读取并打印通讯录。 建立一个标准 EXE 工程

14、,在窗体 Form1 种添加一个命令按钮,输入以下程序: Private Sub Command1_Click() Dim iFile As Integer Dim sName As String, sSex As String, dBirth As Date, sAddr As String iFile = FreeFile Open “d:txl.txt“ For Input As iFile While Not EOF(iFile) Input #iFile, sName, sSex, dBirth, sAddr Print sName, sSex, dBirth, sAddr Wend

15、 End Sub,9.3随机文件的存取 9.3.1 随机文件的打开与关闭 1.随机文件的打开 格式: Open 文件名 For Random Access 存取类型 As 文件号 Len = 记录长度 2.随机文件的关闭 关闭文件使用 Close 语句, 格式: Close #文件号 ,#文件号 ,9.3.2 读(取)随机文件 格式:Get #文件号,记录号,变量 其作用是从指定的随机文件中读取第“记录号”条记录并把读取到的数据赋给“变量”;Get #语句的用法与 Put #语句相似。,9.3.3 写(存)随机文件 格式: Put #文件号,记录号,变量名 其功能是把“变量”的值作为第“记录号

16、”条记录写入指定的随机文件。如果省略了“记录号”(逗号不能省略),则使用最近一次执行 Get #语句或 Put #语句后的记录,或者用 Seek函数指定的记录。,9.4二进制文件的存取 9.4.1 随机文件的打开与关闭 1.二进制文件的打开 格式:Open 文件名 For Binary Access 存取类型 As 文件号 2.文件的关闭 格式: Close #文件号 ,#文件号 ,9.5文件中常用的操作语句和函数 9.5.1 常用的文件操作语句 1.改变当前驱动器(ChDrive 语句) 格式:ChDrive drive 功能:改变当前驱动器。 说明:如果drive为“”,则当前驱动器将不会改变;如果drive中有多个字 符,则ChDrive只会使用首字母。 例如:ChDrive “D“ 及ChDrive “D:“ 和ChDrive “Da

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

当前位置:首页 > 高等教育 > 大学课件

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