第13讲 数据文件.ppt

  1. 1、本文档共38页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第13章 数据文件 第13章 数据文件 文件是存储在外部介质(如磁盘)上的以文件名标识的数据的集合。通常由一组存放在磁盘上的相关字节组成。当应用程序要访问文件时,必须自己决定文件中字节的意义(比如,表示字符、数据记录、整数、字符串等等)。 存储在磁盘上的文件称为磁盘文件,与计算机相连的设备称为设备文件。这些文件都不在计算机内,统称为外部文件。 一、文件及其结构 文件:存储在外部介质上数据的集合。按名存取 磁盘文件是由数据记录组成。记录是计算机处理数据的基本单位,它由一组具有共同属性相互关联的数据项组成。 虽然这3种文件访问的数据类型不同,但应用程序访问它们的步骤却相似: ① 使用Open语句打开文件,并为文件指定一个文件号。对文件进行任何I/O操作之前,都必须经过这步操作。 ② 从文件中读取部分或全部数据到变量中。 ③ 对变量中的数据进行处理。 ④ 将处理后的数据保存回文件中。 ⑤ 使用Close语句关闭文件。如果没有关闭文件,则会导致文件中部分或全部信息丢失。 (2) 文件号 1~511,可以用FreeFile函数获得下一个可利用的文件号。 (3) 记录长度 小于或等于32767的整数,它指定数据缓冲区的大小。 例如,打开C:\VB\SCORE,供写入数据,指定文件号为#1。 例: Print与Write语句输出数据结果比较。 Private Sub Form_Click() Dim Str As String, Anum As Integer Open D:\Myfile.dat For Append As 1 Str = ABCDEFG Anum = 12345 Print #1, Str, Anum Write #1, Str, Anum Close #1 End Sub 例:编程把一个文本框中的内容,以文件形式存入磁盘。 假定文本框的名称为Mytxt,文件名为Myfile.dat。 方法1:把整个文本框的内容一次性地写入文件。 Open Myfile.dat For Output As #1 Print #1, Mytxt.Text Close #1 方法2:把整个文本框的内容一个字符一个字符地写入文件。 Open Myfile.dat For Output As #1 For i=1 To len(Mytxt.Text) Print #1,Mid(Mytxt.Text,i,1); Next i Close #1 2. 顺序文件读操作 从现存文件中读入数据,应以顺序Input方式打开该文件。然后使用 Input# 语句、Line Input# 语句和Input( )函数读入到程序变量中。 使用格式如下: INPUT #文件号,变量列表 把读出的每个数据项分别存放到所对应的变量。 LINE INPUT #文件号,字符串变量 读一行到变量中,主要用来读取文本文件。 INPUT$(读取字符数, #文件号) 读取指定的数量的字符,作为函数的返回值。 四.与读文件操作有关的几个函数 (1)Lof 函数 LOF函数将返回某文件的字节数。例如,LOF(1)返回#1文件的长度,如果返回0值,则表示该文件是一个空文件。 (2)Loc 函数 Loc函数将返回在一个打开文件中读写的记录号;对于二进制文件,它将返回最近读写的一个字节的位置。 (3)Eof 函数 Eof 函数将返回一个表示文件指针是否到达文件末尾的标志。如果到了文件末尾,Eof 函数返回TRUE(-1),否则返回FALSE(0)。 语法结构: Do While Not Eof(文件号) 语句 Loop 例: 编程将一文本文件的内容读到文本框 假定文本框名称为txtTest,文件名为MYFILE.TXT。可以通过下面三种方法来实现。 方法1:一行一行读 txtTest.Text = Open MYFILE.TXT For Input As #1 Do While Not EOF(1) Line Input #1, InputData txtTest.Text = txtTest.Text + InputData+

文档评论(0)

kehan123 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档