文档介绍:第
8
数据文件
文件是指存放在外存储器(如磁盘)上的信息集合
使用文件可以将应用程序所处理的数据以文件的形式保存起来
程序文件和数据文件
本章主要内容
数据文件概述
顺序文件
随机文件
文件基本操作
文件系统对象(FSO)简介
第8章数据文件
数据文件的结构
数据文件由记录组成,记录由字段组成,字段由字符组成
记录1
数据文件
记录2
…………
学号姓名
951001 张三…
学号姓名
951002 李四…
字段
数据文件概念
(1)顺序文件:文本文件。文件中的记录按顺序一个接一个地排列。无法灵活地随意存取它。只适用于有规律的、不经常修改的数据
(2)随机文件:随机文件的每一个记录都有固定的长度,每一个记录都有记录号,这种文件的特点是允许用户存取文件中任一个记录。可以同时进行读或写操作存入和读出速度较快,数据容易更新
(3)二进制文件:可理解为长度为1的特殊的随机文件
文件类型
(1) 打开(或新建)文件
(2) 进行读、写操作 系统设置文件指针,用来记住当前读写的位置
(3) 关闭文件
文件处理的一般步骤
1. 打开文件(Open)
Open 文件名[For 模式][Access 存取类型][锁定] As [#]文件号[Len=记录长度]
说明:(1)文件名;
(2) 模式用于指定文件访问的方式,包括: Append——从文件末尾添加 Binary——二进制文件 Input——顺序输入 Output——顺序输出 Random——随机存取方式
(3)文件号(或称文件缓冲区)
(4)存取类型:访问文件的类型,为Read(只读)、Write(只写)、
Read Write(读写)
(5)锁定:限制其他用户或其他进程对文件进行读写操作
Shared(共享)、Lock Read(禁止读)、Lock Write(禁止写)、
Lock Read Write(禁止读写)
(6)Len:用来指定每个记录的长度(字节数)
示例: Open "d:\" For Output As #1
文件的打开和关闭
2. 关闭文件(Close)
打开的文件使用完后必须关闭。
关闭文件的语句格式: Close [#] 文件号1 [,[#] 文件号2 …] ]
示例: Close #1
1. FreeFile函数
格式:FreeFile
功能:返回一个在程序中没有使用的文件号
示例: FileNo=FreeFile
Open "D:\" For Output As FileNo
2. Seek语句和Seek函数
Seek函数的格式:Seek(文件号)
功能:返回文件指针的当前位置
对于随机文件,Seek函数返回指针当前所指的记录号。对于顺序文件,Seek函数返回指针所在的当前字节位置(从头算起的字节数)
Seek语句的格式:Seek [#]文件号,位置
功能:将指定文件的文件指针设置在指定位置,以便进行下一次读或写操作
对于随机文件,“位置”是一个记录号;对于顺序文件,“位置”表示字节位置
相关的语句和函数
3. Eof函数 格式:Eof(文件号) 功能:测试与文件号相关的文件是否已达到文件的结束位置。如果是,函数值为真值,否则为假值。
使用Eof是为了避免在文件结束处读取数据而发生错误
4. Lof函数 格式:Lof(文件名) 功能:返回与文件号相关的文件的总字节数
格式:Loc(文件号)
功能:返回与文件号相关的文件的当前读写位置
顺序文件的写入操作 以Output或Append方式打开文件,然后使用Write#语句或Print#语句将数据写入文件中
1. Write语句 格式:Write #文件号[,表达式表] 功能:将表达式的值写到与文件号相关的顺序文件中 每个Write语句向顺序文件写入一个记录(不定长),它会自动地用逗号分开每个表达式的值。给字符串加上双引号
在最后一个字符写入后,插入一个回车换行符(Chr(13) + Chr(10)),以此作为记录结束的标记。
示例:Write #1, "Good Afternoon", 1998
顺序文件