08-数据文件

上传人:豆浆 文档编号:47573368 上传时间:2018-07-03 格式:PPT 页数:39 大小:248.50KB
返回 下载 相关 举报
08-数据文件_第1页
第1页 / 共39页
08-数据文件_第2页
第2页 / 共39页
08-数据文件_第3页
第3页 / 共39页
08-数据文件_第4页
第4页 / 共39页
08-数据文件_第5页
第5页 / 共39页
点击查看更多>>
资源描述

《08-数据文件》由会员分享,可在线阅读,更多相关《08-数据文件(39页珍藏版)》请在金锄头文库上搜索。

1、Ch8 数据文件记录1 数据文件记录2 学号 姓名 951001 张三 学号 姓名 951002 李四 字段 文件是指存放在外存储器(如磁盘)上的信息集合。为了有效地对数据 进行存储和读取,文件中的数据必须以某种特定的格式存储,如图所示:文件概述Ch8 数据文件文件的分类 按文件存储数据的性质 程序文件:存储可以由计算机执行的程序,包括源文件和可执 行文件等,如VB中的窗体文件、模块文件、工程文件等 数据文件:存储各种数据。这类数据必须通过程序文件存取和 管理 按文件存取方式和结构 顺序文件:文本文件。文件中的记录按顺序一个接一个地排列 。无法灵活地随意存取它。只适用于有规律的、不经常修改的数

2、据 随机文件:随机文件的每一个记录都有固定的长度,每一个记 录都有记录号,这种文件的特点是允许用户存取文件中任一个记录。可以 同时进行读或写操作存入和读出速度较快,数据容易更新 按文件存取方式和结构 ASCII码文件:文件中的数据都以ASCII码字符的方式存储 二进制文件:用于二进制数据Ch8 数据文件文件操作语句与函数 EOF函数格式:EOF(文件号)功能:测试文件的结束状态。 Seek语句格式:Seek #文件号,位置功能:将指定文件的文件指针设置在指定位置,以便进行下一次读/ 写操作。对于二进制文件和顺序文件,“位置”是从文件开头到当前指针 位置为止的字节数;对于随机文件,“位置”是指记

3、录号 Seek函数格式:Seek(文件号)功能:返回当前读/写位置,即文件指针的位置,返回值得类型是长 整型。对于二进制文件和顺序文件,返回指针所在的当前字节位置;对于 随机文件,返回当前所指的记录号Ch8 数据文件文件操作语句与函数 LOC函数格式:LOC(文件号)功能:返回由文件号指定的文件的当前读写位置。对于顺序文件返回 文件自打开以来读写的字符个数;对于随机文件返回一个记录号 FileAttr函数格式: FileAttr(文件号)功能:返回一个长整型值,表示“文件号”参数所指的文件用什么方 式打开,且“文件号”参数是当前未使用的文件号就会出错返回值说明 1文件以Input方式打开的 2

4、文件以Output方式打开的 4文件以Random方式打开的 8文件以Append方式打开的 32文件以Binary方式打开的Ch8 数据文件文件操作语句与函数 FreeFile函数格式: FreeFile功能:返回程序中没有使用的最小文件号 Lof函数格式: Lof(文件号)功能:返回给指定文件分配的字节数,即文件的长度,且文件可以是 打开的 FileLen函数格式: FileLen(文件号)功能:返回一个长整型数值,代表一个文件的长度,单位是字节,其 中文件名可以包含驱动器和路径,且文件可以是未打开的Ch8 数据文件文件操作语句与函数 Shell函数格式: Shell 命令字符串,窗口类型

5、功能:运行一个可执行的程序;命令字符串为要执行的应用程序名, 包括路径,必须是可执行文件;窗口类型表示应用程序的窗口的大小 Lock和Unlock语句格式: Lock#文件号,记录|开始to 结束UnLock#文件号,记录|开始to 结束功能:限制其他用户或进程对打开的全部文件或部分文件的访问控制值窗口类型意 义值窗口类型意 义 0VBHide窗口不显 示3VBMaximizedFocus最大窗口 有指针 1 默认VBNormalFocus正常窗口 有指针4VBNormalNoFocus正常窗口 无指针2VBMinimizedFocus最小窗口 有指针6VBMinimizedNoFocus最小

6、窗口 无指针Ch8 数据文件访问顺序文件 v顺序文件的打开与关闭打开顺序文件的语句格式:Open For Input|Output|AppendAs # Len=buffersize关闭顺序文件的语句格式:Close , 顺序文件关键字对文件的操作 Input 从文件中读数据,若文件不存在,则会出错 Output 把数据写到文件中,若文件不存在,则创建新文件;若文件存 在,则覆盖文件中原有内容Append追加数据到文件的末尾,不覆盖文件中原有内容,若文件不存 在,则创建新文件Ch8 数据文件v顺序文件的写入操作要将数据写入文本文件,应先以Output或Append方式打开该文件 。然后使用Pr

7、int#或Write#语句将数据写入文件中,语句格式:Print # , ,|;Write # ,顺序文件Print语句Write语句使用Spc和Tab函数控制输出位置(,|;)前者为标准格式,后者为紧 凑格式(,|;)输出效果相同且各项数据之 间自动插入逗号输出的数据无定界符字符型数据两端加引号,日期型和 逻辑型数据两端加#Ch8 数据文件顺序文件v顺序文件的读取操作读取文本文件内容时,应先以Input方式打开该文件。然后使用Line Input#,Input()或Input#语句将文件内容复制到内存变量中,语句格式:Line Input# ,Input(Length,)Input# , 说

8、明: Line Input#语句从顺序文件中读取一个完整的行遇到回车或换行符 结束,再读则从下一行开始 Input(Length,)函数读取指定长度Length的数据 Input# 语句从文件中读取数据项并赋给变量 用Line Input#语句读取数据时,可以使用EOF()函数测试文件是否 到达文件尾Ch8 数据文件顺序文件随机生成10个1100的整数,并存入文件“out.dat”中程 序执行后,可以在记事本程序中打开新生成的out.dat文件来查看结果。建立一个名为“myfile”的文件,利用Print#语句和 Write#语句向其中输出四行文字。输入3个学生的学号、姓名、成绩并保存在文件“

9、stu.dat”中。读取教材示例3写入到文件“p221-例8-4”中的学号、姓名、年龄,并输出到窗体上。编程实现:单击“生成并显示数据”按钮后,在文本框中 显示50个1099之间的随机整数,并将这些数据存入“in.txt”文件中;单 击“计算并保存”按钮后,从“in.txt”文件中读取数据并求这些数据中 大于50的数据的和,并将结果存入文件“result.txt”中。结合文本框综合演示文件的多种读写方法。教材示例1教材示例2教材示例3教材示例4教材示例5教材示例6Ch8 数据文件顺序文件示例1:设计一个简易文本编辑器,具有创建、编辑、保存普通 文本文件的功能。如图所示设计步骤如下:建立应用程序

10、用户界面并设置对象属性,如上图(控件有:一 个文本框,一个Picture1,一个命令按 钮数组。在图片框中有一个公共对话框Common Dialog控件,)示例1Ch8 数据文件顺序文件编写事件代码 窗体的Resize事件代码(使文本框随窗体一起改变大小) Private Sub Form_Resize()With Text1.Left = 0.Top = 0.Height = Form1.ScaleHeight.Width = Form1.ScaleWidth - Picture1.WidthEnd With End Sub 命令按钮组的Click事件代码 Private Sub Comma

11、nd1_Click(Index As Integer)n = IndexSelect Case nCase 0Text1.Text = “ Form1.Caption = “未命名“Ch8 数据文件顺序文件Case 1CommonDialog1.ShowOpenfname = CommonDialog1.FileNameIf fname “ ThenOpen fname For Output As #1Print #1, Text1.Text: Close #1End IfForm1.Caption = fnameCase 3CommonDialog1.ShowSavefname = Comm

12、onDialog1.FileNameIf fname -1 ThenCommand3.Enabled = TrueElseCommand3.Enabled = FalseEnd If End Sub随机文件Ch8 数据文件 “添加”命令按钮Command2的Click事件代码 Private Sub Command2_Click()Dim lastrec As IntegerWith da.xh = Text1(0).Text.xm = Text1(1).Text.yw = Val(Text1(2).Text).wy = Val(Text1(3).Text).sx = Val(Text1(4)

13、.Text)End WithOpen “.xsda2.dat“ For Random As #1 Len = Len(da)lastrec = LOF(1) / Len(da) : Put #1, lastrec + 1, daClose #1 : Call Form_Load : Text1(0).SetFocus End Sub随机文件Ch8 数据文件 “删除”命令按钮Command3的Click事件代码 Private Sub Command3_Click()Dim lastrec As Integer :recnum = List1.ListIndex + 1Open “.rec.te

14、m“ For Random As #1 Len = Len(da)Open “.xsda2.dat“ For Random As #2 Len = Len(da)lastrec = LOF(2) / Len(da)For n = 1 To lastrecIf n recnum ThenGet #2, n, da :Put #1, , daElseGet #2, n, daWith daText1(0).Text = .xh : Text1(1).Text = .xm : Text1(2).Text = .ywText1(3).Text = .wy :Text1(4).Text = .sxEnd

15、 WithEnd IfNextClose #1 :Close #2 :Kill “.xsda2.dat“Name “.rec.tem“ As “.xsda2.dat“Call Form_Load :Text1(0).SetFocus End Sub随机文件Ch8 数据文件文件系统控件文件系统控件的作用是显示出关于驱动器、目录和文件的信息,并从中进行选择以便执行进一步操作。通过使用DriveListBox(驱动器列表框)、DirListBox(目 录列表框)和FileListBox(文件列表框)三种控件的组合,可以创建自定义文件系统对话框。 驱动器列表框提供一个下拉式驱动器清单,显示当前系统中所

16、有有效的驱动器。Drive属性(只能通过程序代码设置) 示例:驱动器列表框名称. Drive=驱动器名ChDrive语句(可将指定的驱动器设为当前驱动器) 示例:ChDrive Drive1.Drive 将用户在列表框中选择的驱动器设置为当前驱动器ChDrive “D” 将D:设置为当前驱动器Ch8 数据文件目录列表框用以显示当前驱动器上的目录结构。在目录列表框中只显示当前驱动器上的目录。要显示其他驱 动器上的目录,需使用目录列表框的Path属性改变访问路径。 Path属性(适用于目录列表框和文件列表框)格式为:窗体.目录列表框.| 文件列表框. Path=“路径”示例:Dir1.Path= Drive1.Drive 将用户在驱动器列表框中选择的驱动器设为当前目录Dir1.

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

当前位置:首页 > 学术论文 > 毕业论文

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