VB8
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
6
8.2.2文件访问的语句和函数 8.2.2文件访问的语句和函数
语句和函数 Close Get InPut() InPut # Line Input # Open Print # Put Type……End Type End Type Write# 顺序型
P179 表8-1
随机型 二进制型
7Hale Waihona Puke 打开文件——Open语句 Open语句 1.打开文件 Open 在对文件进行操作之前, 必须用Open Open语 在对文件进行操作之前 , 必须用 Open 语 句打开或建立一个文件。 句打开或建立一个文件。 [功能]: 功能] 为文件的输入输出分配缓冲区 , 为文件的输入输出 分配缓冲区, 指定文件 分配缓冲区 的存取模式和存取类型, 的存取模式和存取类型 ,定义与文件相关联的 文件号。 文件号。
二进制文件: 以字节为单位存取数据, 二进制文件: 以字节为单位存取数据,可以存储任意希望 存储的数据。 存储的数据。
5
2、文件操作的一般步骤
访问一个数据文件的操作分为三步, 打开文件, 访问一个数据文件的操作分为三步,即打开文件,读写文件和关闭 文件。 文件。 打开文件: 通过Open实现的, Open实现的 打开文件 : 通过 Open 实现的 , 将文件与内存中某个文件缓冲 区相关联。 区相关联。 读写文件: 读写文件: 语句和Write 写 数 据 : 用 Print # 语句和 Write # 语句向一个顺 序文件写数据。 序文件写数据。 读 数 据:用Input # 和Line Input # 语句将顺序文 件中的数据读出给应用程序中的相应变量。 件中的数据读出给应用程序中的相应变量。 关闭文件:Close语句, 关闭文件:Close语句,释放文件所占用的文件缓冲区 语句
19
Private Sub Command2_Click() Dim i As Integer, a(10) As Integer Open "d:\test4.txt" For Output As #1 For i = 1 To 10 a(i) = Int(Rnd * 100) + 100 Print a(i); Write #1, a(i), Next i Print Write #1, Close #1 End Sub
3.Write # 语句 [功能]: 功能] 该语句和Print 语句一样将数据写到文件中去。 该语句和Print # 语句一样将数据写到文件中去。 [格式]: 格式] #文件号 Write #文件号 , [说明]: 说明] 输出列表:由一个或多个用逗号分隔的数值表达式 逗号分隔 输出列表:由一个或多个用逗号分隔的数值表达式 或字符串型表达式构成。 或字符串型表达式构成。 [输出列表] 输出列表]
其他函数和语句:lock seek、 其他函数和语句:lock /unlock 、seek、filelen 自看
13
主要内容
8.1 文件处理 8.2 顺序文件
14
8.2 顺序文件
8.2.1 顺序文件的写操作 1.打开文件 两种方式打开文件: 两种方式打开文件: Open 文件名 FOR Output AS [#]文件号 [#]文件号 在执行写操作时, 在执行写操作时,文件中原来内容可能被覆盖 [#]文件号 Open 文件名 FOR Append AS [#]文件号 写入的数据添加在文件的尾部。 写入的数据添加在文件的尾部。
内容要求
掌握文件的基本概念; 1、掌握文件的基本概念; 2、掌握VB文件系统的语句、函数的使用 掌握VB文件系统的语句、 VB文件系统的语句 掌握顺序文件 顺序文件的输入和输出 3、掌握顺序文件的输入和输出
2
Visual Basic提供了从磁盘、磁带等外部 提供了从磁盘、 提供了从磁盘 存储器上进行数据输入输出的功能。 存储器上进行数据输入输出的功能。存储在 这些外部设备上的数据是由文件构成的 是由文件构成的。 这些外部设备上的数据是由文件构成的。 通过直接处理文件, 通过直接处理文件 , 应用程序可以一次 可以访问多组数据, 可以访问多组数据,还可以与其它应用程序 共享数据。 共享数据。
21
方式打开顺序文件, 用Input方式打开顺序文件,有以下 方式打开顺序文件 三种读取数据的方式: 三种读取数据的方式: Input语句 1. Input语句 2. Line Input语句 Input语句
3.Input函数 3. Input函数 Input
22
1、Input语句 Input语句 <#文件号>,变量表 文件号>, [格式]:Input <#文件号>,变量表 格式] [功能]:从一个打开的顺序文件中读取数据,并将它们 功能] 从一个打开的顺序文件中读取数据, 赋值给相应的变量。 赋值给相应的变量。 [说明]: 说明] 变量表可以包含简单变量和数组元素, (1)变量表可以包含简单变量和数组元素,用逗号间隔 从顺序文件中读数据时,要从头开始,依次读出; (2)从顺序文件中读数据时,要从头开始,依次读出; 从顺序文件读数据时,忽略前导空格、回车符、 (3)从顺序文件读数据时,忽略前导空格、回车符、换 行符; 行符;
18
功能基本相同,主要差别是 Write # 与Print# 功能基本相同,主要差别是: 用Write # 语句 数据以紧凑格式存放,数据之间以逗号分隔。 数据以紧凑格式存放,数据之间以逗号分隔。 逗号分隔 对于字符串,系统自动地在其首尾加上双引号 对于字符串,系统自动地在其首尾加上双引号 作为定界符;对于正数,前面不再留有空格。 作为定界符;对于正数,前面不再留有空格。
16
Output Append? Private Sub Command1_Click() Dim i As Integer, a(10) As Integer Open "d:\test4.txt" For Output As #1 For i = 1 To 10 a(i) = Int(Rnd * 100) + 100 Print a(i); Print #1, a(i); Next i Print Print #1, Close #1 End Sub
3) Open "Exam" FOR Input AS #5
打开已存在的名为Exam的文件, 打开已存在的名为Exam的文件,可从中读出数 Exam的文件 如果文件“Exam”不存在将产生 不存在将产生“ 据。如果文件“Exam 不存在将产生“File Not Found”错误 错误。 Found 错误。
8
[格式]: 格式] Open 文件名 [FOR 模式 [Access 存取类型 [锁定 模式] 存取类型] 锁定 锁定] AS [#]文件号 [Len=记录长度 文件号 记录长度] 记录长度 说明] [说明]: (1)文件名 可用字符串或字符串型变量表示 。 可以 文件名:可用字符串或字符串型变量表示 文件名 可用字符串或字符串型变量表示。 包括盘符和路径。 包括盘符和路径。 (2) 模式 说明访问文件的方式 模式: OutPut 设定为顺序输出模式(覆盖式 覆盖式) 设定为顺序输出模式 覆盖式 InPut 设定为顺序输入模式 Append (添加式 添加式) 设定为添加模式 添加式 (3)文件号 取值范围在 ~511范围之内。执行 文件号: 范围之内。 文件号 取值范围在1~ 范围之内 执行Open 语句时,文件与分配给定的文件号相关联。 语句时,文件与分配给定的文件号相关联。
9
文件
输入 数据
输出 数据
文件
程序
读文件方式: 读文件方式: Input 写文件方式: 写文件方式: Output Append
顺序文件的读写
10
例子: 例子:
P181
1) Open "Exam" FOR Output AS #5 如果文件“Exam”不存在 不存在, 如果文件“Exam 不存在,则建立一个新文件 可以将数据写入到文件中去。如果文件“Exam” ,可以将数据写入到文件中去。如果文件“Exam 已存在,则该语句打开已存在的文件, 已存在,则该语句打开已存在的文件,新写入的 数据将覆盖原来的数据。 数据将覆盖原来的数据。 2) Open "Exam" FOR Append AS #5 如果文件“Exam”不存在 则建立一个新文件, 不存在, 如果文件“Exam 不存在,则建立一个新文件, 否则打开已存在的名为“Exam”的文件 的文件, 否则打开已存在的名为“Exam 的文件,新写入的 数据添加到文件的后面,原来的数据仍然存在。 数据添加到文件的后面,原来的数据仍然存在。
3
主要内容
8.1 8.2 文件处理 顺序文件
4
8.2文件处理 8.2文件处理
8.2.1文件概述 8.2.1文件概述
文件:所谓文件,是一组相关信息的集合, 文件:所谓文件,是一组相关信息的集合,是存放在磁盘上一 系列相关的字节; 系列相关的字节; 1、 文件访问类型:顺序访问、随机访问和二进制访问; 文件访问类型:顺序访问、随机访问和二进制访问; 顺序文件: 顺序文件: 随机文件: 随机文件: 即文本文件, ASCII码方式存储; 即文本文件,以ASCII码方式存储; 码方式存储 也称记录文件,由用户定义的字段组成; 也称记录文件,由用户定义的字段组成;
11
2、关闭文件 [[#]<文件号 文件号>] [格式]:Close [[#]<文件号>] 格式] [功能]:关闭指定的文件号对应的文件。 功能] 关闭指定的文件号对应的文件。 释放相应缓冲区和与该文件相联系的文件号。 释放相应缓冲区和与该文件相联系的文件号。
例1:Close #1,#2 : 例2:Close :
15
2.Print # 语句 . 功能] [功能]:将一个或多个数据写到顺序文件中 格式] 文件号, 输出列表] [格式]:Print #文件号,[输出列表] 说明: 说明: 输出列形式是:[{SPC(n)|Tab(n)}][表达式][分隔符 表达式][分隔符] 输出列形式是:[{SPC(n)|Tab(n)}][表达式][分隔符] 其中: 其中: SPC(n):用来在输出位置插入 个空格。 插入n SPC(n):用来在输出位置插入n个空格。 Tab(n):用来将其后的输出项定位在第n 定位在第 Tab(n):用来将其后的输出项定位在第n列。 分隔符:可以是逗号或分号。 分隔符:可以是逗号或分号。分别对应标准格式或 紧凑格式
P183
当文件指针到达文件结束标志时返回True, 当文件指针到达文件结束标志时返回True,否则返回 到达文件结束标志时返回True False。 False。 LOF(文件号) LOF(文件号) 文件号 返回已用Open语句打开的文件的字节数(文件长度) 返回已用Open语句打开的文件的字节数(文件长度) Open语句打开的文件的字节数
Reset语句 3、关闭所有文件——Reset语句 关闭所有文件 Reset [格式]: Reset 格式]: Open语句打开的文件 [功能]:关闭所有用Open语句打开的文件。 功能] 关闭所有用Open语句打开的文件。 [说明]:适用于任何文件。 说明] 适用于任何文件。
12
相关函数和语句 Eof(文件号) Eof(文件号)
Output Append?
8.2.2 顺序文件的读操作
当一个文件存在时,可以对它进行读操作。 1) 当一个文件存在时,可以对它进行读操作。 读操作分为两种 一种是一个数据一个数据地读, 两种, 2) 读操作分为两种,一种是一个数据一个数据地读, 另一种是一行数据一行数据地读。 另一种是一行数据一行数据地读。 打开文件(补充) 打开文件(补充) [格式]:Open <文件名> For Input As <#文件号> 格式] <文件名> <#文件号> 文件名 文件号 输入模式打开文件 [功能]:用指定的文件号以顺序输入模式打开文件。 功能] 用指定的文件号以顺序输入模式打开文件。 Input方式打开的文件 方式打开的文件, [说明]:以Input方式打开的文件,只能进行读操作 说明]