Basic程序设计教学课件.ppt

上传人:asd****56 文档编号:87668160 上传时间:2023-04-16 格式:PPT 页数:38 大小:274.50KB
返回 下载 相关 举报
Basic程序设计教学课件.ppt_第1页
第1页 / 共38页
Basic程序设计教学课件.ppt_第2页
第2页 / 共38页
点击查看更多>>
资源描述

《Basic程序设计教学课件.ppt》由会员分享,可在线阅读,更多相关《Basic程序设计教学课件.ppt(38页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、Visual BasicVisual Basic程序设计教学课件程序设计教学课件程序设计教学课件程序设计教学课件 现代教育技术中心现代教育技术中心现代教育技术中心现代教育技术中心第第1313章章 数据文件数据文件1.掌握VB中文件的概念、种类及其结构;2.掌握顺序文件的操作:打开、读/写、关闭;3.掌握随机文件的操作:打开、读/写、关闭;4.了解二进制文件的操作。5.了解与文件操作有关的一些语句本章内容及要求:Visual BasicVisual Basic程序设计教学课件程序设计教学课件程序设计教学课件程序设计教学课件 现代教育技术中心现代教育技术中心现代教育技术中心现代教育技术中心本章重点

2、:顺序文件的操作:打开、读/写、关闭;随机文件的操作:打开、读/写、关闭;本章难点:随机文件、二进制文件的操作第第1313章章 数据文件数据文件Visual BasicVisual Basic程序设计教学课件程序设计教学课件程序设计教学课件程序设计教学课件 现代教育技术中心现代教育技术中心现代教育技术中心现代教育技术中心 文件是存储在外部介质(如磁盘)上的以文件名标识的数据的集合。通常由一组存放在磁盘上的相关字节组成。当应用程序要访问文件时,必须自己决定文件中字节的意义(比如,表示字符、数据记录、整数、字符串等等)。存储在磁盘上的文件称为磁盘文件,与计算机相连的设备称为设备文件。这些文件都不在

3、计算机内,统称为外部文件。13.1文件概述Visual BasicVisual Basic程序设计教学课件程序设计教学课件程序设计教学课件程序设计教学课件 现代教育技术中心现代教育技术中心现代教育技术中心现代教育技术中心一、文件及其结构 文件:存储在外部介质上数据的集合。按名存取 磁盘文件是由数据记录组成。记录是计算机处理数据的基本单位,它由一组具有共同属性相互关联的数据项组成。数据项文件的概念Visual BasicVisual Basic程序设计教学课件程序设计教学课件程序设计教学课件程序设计教学课件 现代教育技术中心现代教育技术中心现代教育技术中心现代教育技术中心二、文件分类二、文件分类

4、根据访问文件的方式将文件分成3类:顺序文件 随机文件 二进制文件。1 1顺序文件顺序文件 顺序文件(Sequential File)是普通的文本文件。顺序文件中的记录按顺序一个接一个地排列。读写文件存取记录时,都必须按记录顺序逐个进行。一行一条记录(一项数据),记录可长可短,以“换行”字符为分隔符号。Visual BasicVisual Basic程序设计教学课件程序设计教学课件程序设计教学课件程序设计教学课件 现代教育技术中心现代教育技术中心现代教育技术中心现代教育技术中心2随机文件随机文件 随机文件(Random Access File)是可以按任意次序读写的文件,其中每个记录的长度必须相

5、同。在这种文件结构中,每个记录都有其唯一的一个记录号,所以在读取数据时,只要知道记录号,便可以直接读取记录。随机文件的文件结构Visual BasicVisual Basic程序设计教学课件程序设计教学课件程序设计教学课件程序设计教学课件 现代教育技术中心现代教育技术中心现代教育技术中心现代教育技术中心3二进制文件二进制文件 二进制文件(Binaryfile)是字节的集合、它直接把二进制码存放在文件中。除了没有数据类型或者记录长度的含义以外,它与随机访问很相似。二进制访问模式是以字节数来定位数据,在程序中可以按任何方式组织和访问数据,对文件中各字节数据直接进行存取。Visual BasicVi

6、sual Basic程序设计教学课件程序设计教学课件程序设计教学课件程序设计教学课件 现代教育技术中心现代教育技术中心现代教育技术中心现代教育技术中心 虽然这3种文件访问的数据类型不同,但应用程序访问它们的步骤却相似:使用Open语句打开文件,并为文件指定一个文件号。对文件进行任何I/O操作之前,都必须经过这步操作。从文件中读取部分或全部数据到变量中。对变量中的数据进行处理。将处理后的数据保存回文件中。使用Close语句关闭文件。如果没有关闭文件,则会导致文件中部分或全部信息丢失。文件的基本操作文件的基本操作Visual BasicVisual Basic程序设计教学课件程序设计教学课件程序设

7、计教学课件程序设计教学课件 现代教育技术中心现代教育技术中心现代教育技术中心现代教育技术中心打开文件读出或写入关闭文件顺序文件的基本操作在程序中对文件的操作,通常按3个步骤进行:一、顺序文件的打开与关闭1.打开文件Open “文件名”For 模式 As#文件号 Len=记录长度(1)模式OUTPUT:写操作INPUT:读操作APPEND:追加到文件未尾OPEN C:VBSCORE.txt FOR OUTPUT AS#1Visual BasicVisual Basic程序设计教学课件程序设计教学课件程序设计教学课件程序设计教学课件 现代教育技术中心现代教育技术中心现代教育技术中心现代教育技术中心

8、(2)文件号文件号 1511,可以用,可以用FreeFile函数获得下一个可利用的文件号。函数获得下一个可利用的文件号。(3)记录长度记录长度小于或等于小于或等于32767的整数,它指定数据缓冲区的大小。的整数,它指定数据缓冲区的大小。例如,打开例如,打开C:VBSCORE,供写入数据,指定文件号为,供写入数据,指定文件号为#1。例如:例如:OPEN “C:TEMPA.TXT”FOR Input AS#1 OPEN“C:TEMPB.TXT”FOR Output AS#2 OPEN“C:TEMPC.TXT”FOR Append AS#1Visual BasicVisual Basic程序设计教学

9、课件程序设计教学课件程序设计教学课件程序设计教学课件 现代教育技术中心现代教育技术中心现代教育技术中心现代教育技术中心1、顺序文件的写操作、顺序文件的写操作 向向文文件件写写入入内内容容使使用用 Print#语语句句或或Write#语语句句,在在程程序序中中是是数据输出。数据输出。(1)Print语句语句语法格式:PRINT#PRINT#,说明:说明:文件号为以写方式打开文件的文件号;输出列表为用分号或逗号分隔的变量、常量、空格和定位函数序列。(2)Write命令命令语法格式:Write#,Write语句采用紧凑格式。数据项之间插入“,”,并给字符数据加上双引号。二、二、二、二、顺序文件的读写

10、操作顺序文件的读写操作顺序文件的读写操作顺序文件的读写操作Visual BasicVisual Basic程序设计教学课件程序设计教学课件程序设计教学课件程序设计教学课件 现代教育技术中心现代教育技术中心现代教育技术中心现代教育技术中心例:例:Print与与Write语句输出数据结果比较。语句输出数据结果比较。Private Sub Form_Click()Dim Str As String,Anum As Integer Open D:Myfile.dat For Append As 1Str=ABCDEFGAnum=12345Print#1,Str,AnumWrite#1,Str,Anum

11、Close#1End SubVisual BasicVisual Basic程序设计教学课件程序设计教学课件程序设计教学课件程序设计教学课件 现代教育技术中心现代教育技术中心现代教育技术中心现代教育技术中心例:例:编程把一个文本框中的内容,以文件形式存入磁盘。编程把一个文本框中的内容,以文件形式存入磁盘。假定文本框的名称为假定文本框的名称为Mytxt,文件名为文件名为Myfile.dat。方法方法1:把整个文本框的内容一次性地写入文件。把整个文本框的内容一次性地写入文件。Open Myfile.dat For Output As#1Print#1,Mytxt.TextClose#1方法方法2:

12、把整个文本框的内容一个字符一个字符地写入文件。把整个文本框的内容一个字符一个字符地写入文件。Open Myfile.dat For Output As#1For i=1 To len(Mytxt.Text)Print#1,Mid(Mytxt.Text,i,1);Next iClose#1Visual BasicVisual Basic程序设计教学课件程序设计教学课件程序设计教学课件程序设计教学课件 现代教育技术中心现代教育技术中心现代教育技术中心现代教育技术中心2.顺序文件读操作 从现存文件中读入数据,应以顺序Input方式打开该文件。然后使用 Input#语句、Line Input#语句和I

13、nput()函数读入到程序变量中。使用格式如下:INPUT#文件号文件号,变量列表变量列表把读出的每个数据项分别存放到所对应的变量。LINE INPUT#文件号文件号,字符串变量字符串变量读一行到变量中,主要用来读取文本文件。INPUT$(读取字符数读取字符数,#文件号文件号)读取指定的数量的字符,作为函数的返回值。Visual BasicVisual Basic程序设计教学课件程序设计教学课件程序设计教学课件程序设计教学课件 现代教育技术中心现代教育技术中心现代教育技术中心现代教育技术中心三、关闭文件三、关闭文件Close 语句使用格式如下:Close Close 文件号列表文件号列表文件号

14、列表文件号列表 其中:文件号列表为可选项,如:#1,#2,#3,如果省略,则将关闭Open语句打开的所有活动文件。例如:Close#1,#2,#3 Close Visual BasicVisual Basic程序设计教学课件程序设计教学课件程序设计教学课件程序设计教学课件 现代教育技术中心现代教育技术中心现代教育技术中心现代教育技术中心四四与读文件操作有关的几个函数与读文件操作有关的几个函数(1)Lof 函数函数 LOF函函数数将将返返回回某某文文件件的的字字节节数数。例例如如,LOF(1)返返回回#1文文件件的的长长度度,如如果果返回返回0值,则表示该文件是一个空文件。值,则表示该文件是一个

15、空文件。(2)Loc 函数函数 Loc函函数数将将返返回回在在一一个个打打开开文文件件中中读读写写的的记记录录号号;对对于于二二进进制制文文件件,它它将将返返回最近读写的一个字节的位置。回最近读写的一个字节的位置。(3)Eof 函数函数 Eof 函数将返回一个表示文件指针是否到达文件末尾的标志。如果到了文件函数将返回一个表示文件指针是否到达文件末尾的标志。如果到了文件末尾,末尾,Eof 函数返回函数返回TRUE(-1),否则返回否则返回FALSE(0)。语法结构:语法结构:Do While Not Eof(文件号)(文件号)语句语句 LoopVisual BasicVisual Basic程序

16、设计教学课件程序设计教学课件程序设计教学课件程序设计教学课件 现代教育技术中心现代教育技术中心现代教育技术中心现代教育技术中心例:例:编程将一文本文件的内容读到文本框编程将一文本文件的内容读到文本框 假定文本框名称为假定文本框名称为txtTest,文件名为文件名为MYFILE.TXT。可以通过下面三种可以通过下面三种方法来实现。方法来实现。方法方法1:一行一行读一行一行读txtTest.Text Open MYFILE.TXT For Input As#1Do While Not EOF(1)Line Input#1,InputDatatxtTest.Text txtTest.Text+Inp

17、utData+vbCrLfLoopClose#1回车换行回车换行回车换行回车换行Visual BasicVisual Basic程序设计教学课件程序设计教学课件程序设计教学课件程序设计教学课件 现代教育技术中心现代教育技术中心现代教育技术中心现代教育技术中心 方法2:一次性读txtTest.Text Open MYFILE.TXT For Input As#1txtTest.Text=Input(LOF(1),1)Close#1方法3:一个个字符读Dim InputData as String*1txtTest.Text Open MYFILE.TXT For Input As#1Do Whi

18、le Not EOF(1)Input#1,InputDatatxtTest.Text txtTest.Text+InputDataLoopClose#1Visual BasicVisual Basic程序设计教学课件程序设计教学课件程序设计教学课件程序设计教学课件 现代教育技术中心现代教育技术中心现代教育技术中心现代教育技术中心例:顺序文件的应用举例.本程序演示顺序文件的读写操作,程序运行示意如图所示。该程序可以打开一个顺序文件,将其内容存入文本框中进行修改,并可以保存修改。改成可以将文本框的内容在磁盘上建立一个顺序文件。顺序文件应用举例Visual BasicVisual Basic程序设计

19、教学课件程序设计教学课件程序设计教学课件程序设计教学课件 现代教育技术中心现代教育技术中心现代教育技术中心现代教育技术中心14.2 顺序文件Visual BasicVisual Basic程序设计教学课件程序设计教学课件程序设计教学课件程序设计教学课件 现代教育技术中心现代教育技术中心现代教育技术中心现代教育技术中心设置控件事件代码如下:vPrivate Sub Command1_Click()本过程完成文件的读取功能v Dim File1v Dim nextline As Stringv CommonDialog1.Filter=Text Files(.txt)|.txt 指定默认文件类型v

20、 CommonDialog1.ShowOpen 调用以CommonDialog1控件打开的对话框,以输入要打开的文件名v File1=CommonDialog1.filename 将打开对话框提供的文件名赋予变量File1 顺序文件应用举例Visual BasicVisual Basic程序设计教学课件程序设计教学课件程序设计教学课件程序设计教学课件 现代教育技术中心现代教育技术中心现代教育技术中心现代教育技术中心v Open File1 For Input As#1 按读方式打开下面循环可以用语句“Text1.text=Input(LOF(1),1)”替代 v Do Until EOF(1)

21、将打开文本文件的内容赋予文本框v Line Input#1,nextlinev Text1.Text=Text1.Text+nextline+Chr(13)+Chr(10)v Loopv Close 1 关闭打开的文件vEnd SubVisual BasicVisual Basic程序设计教学课件程序设计教学课件程序设计教学课件程序设计教学课件 现代教育技术中心现代教育技术中心现代教育技术中心现代教育技术中心vPrivate Sub Command2_Click()本过程完成将文本框的内容写入文件中v Dim contents,File1v CommonDialog1.showSave 调用C

22、ommandDialog1控件的保存对话框,以提供建立文件的文件名v File1=CommonDialog1.filenamev Open File1 For Output As#1 以写方式打文件v Contents=Text1.Textv Text1.Text=清除文本框中的内容v Print#1,Contents 往文件中写入内容v Close 1 vEnd SubPrivate Sub Command3_Click()v Unload Me 退出程序vEnd SubVisual BasicVisual Basic程序设计教学课件程序设计教学课件程序设计教学课件程序设计教学课件 现代教育

23、技术中心现代教育技术中心现代教育技术中心现代教育技术中心14.3 随机文件 在文件中以顺序文件方式进行存取数据很方便也很常用,但是当需要大量查找或修改文件中的数据时会很困难,而这时采用随机文件方式存取数据就显得比较方便。随机文件的每一个数据项都有相同的长度,它的数据项通常称做记录。随机文件是以记录为单位的,每条记录都被赋予了记录号以便查找。应用程序可以根据记录号直接读取随机文件中的任意记录,而无须由前至后逐个读取记录。对随机文件的存取是以记录为单位进行的,每个记录包括一个或多个字段。具有一个字段的记录对应于任一标准类型,比如整数或定长字符串。具有多个字段的记录对应于用户自定义类型。Visual

24、 BasicVisual Basic程序设计教学课件程序设计教学课件程序设计教学课件程序设计教学课件 现代教育技术中心现代教育技术中心现代教育技术中心现代教育技术中心1、声明记录类型变量 在打开一个文件进行随机访问之前,应定义一个类型,该类型对应于该文件包含或将包含的记录。语法格式为:Private|Public Type 自定义类型名自定义类型名 元素名元素名 As type 元素名元素名 As type End Type Visual BasicVisual Basic程序设计教学课件程序设计教学课件程序设计教学课件程序设计教学课件 现代教育技术中心现代教育技术中心现代教育技术中心现代教育

25、技术中心例如,声明一个学生自定义类型。Type Student Number As String 2 学号,宽度为2字节 Name As String 8 姓名,宽度为8字节 Score As Integer 成绩,宽度为2字节 End Type 13.3 随机文件Visual BasicVisual Basic程序设计教学课件程序设计教学课件程序设计教学课件程序设计教学课件 现代教育技术中心现代教育技术中心现代教育技术中心现代教育技术中心 在定义与记录对应的类型以后,应接着声明程序需要的任何其他变量,用来处理作为随机访问而打开的文件。如:Public student1,student2 As

26、 student 定义记录变量 Public stnume As Integer 定义存放当前记录号的变量 Public LastRecord As Long 存放最后一条记录的编号 13.3 随机文件Visual BasicVisual Basic程序设计教学课件程序设计教学课件程序设计教学课件程序设计教学课件 现代教育技术中心现代教育技术中心现代教育技术中心现代教育技术中心例如:vDim Lastrecord As Long 存放最后一个记录的编号vDim student1 As studentvDim RecLength as Long vRecLength=Len(student1)计

27、算每条记录的长度vFileNum=FreeFile()取出下一个可用文件编号vOpen School.dat For Random As FileNum Len=RecLength 用Open语句打开新文件vLastRecord=LOF(FileNum)/RecLength 存放文件中记录的个数13.3 随机文件Visual BasicVisual Basic程序设计教学课件程序设计教学课件程序设计教学课件程序设计教学课件 现代教育技术中心现代教育技术中心现代教育技术中心现代教育技术中心2 随机文件的操作 一、打开格式:Open 文件名 For Random As#文件号 Len=记录长度 二

28、、读操作1.格式:Get#文件号,记录号,变量名2.功能:将一个已打开的磁盘文件的一条记录的内容读入一个变量之中。忽略记录号,则读出当前记录后的那一条记录。Visual BasicVisual Basic程序设计教学课件程序设计教学课件程序设计教学课件程序设计教学课件 现代教育技术中心现代教育技术中心现代教育技术中心现代教育技术中心 三、写操作1.格式:Put#文件号,文件号,记录号记录号,变量名,变量名2.功能:将一个变量的数据写入磁盘文件中,将一个记录变量的内容写到指定的记录位置处。忽略记录号,则表示在当前记录后的位置插入一条记录。Visual BasicVisual Basic程序设计教

29、学课件程序设计教学课件程序设计教学课件程序设计教学课件 现代教育技术中心现代教育技术中心现代教育技术中心现代教育技术中心例题:创建一个随机文件,然后读出其中内容,显示在文本框中:例题:创建一个随机文件,然后读出其中内容,显示在文本框中:在窗体中创建一个文本框在窗体中创建一个文本框text1,两个命令按钮,两个命令按钮command1和和command2,点击,点击command1(写入文件)时创建文件,点击(写入文件)时创建文件,点击command2(读出文件)时把文件中(读出文件)时把文件中的数据读出来,显示在文本框中。下面是程序代码:的数据读出来,显示在文本框中。下面是程序代码:自定义数据

30、类型(记录类型,在窗体的通用代码段中声明)自定义数据类型(记录类型,在窗体的通用代码段中声明)Private Type Record ID As Integer Name As String*20 End Type创建文件的代码,创建文件的代码,Command1的单击事件的单击事件Private Sub Command1_Click()Dim MyRecord As Record Open TESTFILE For Random As#1 Len=Len(MyRecord)For recordnumber=1 To 5 MyRecord.ID=recordnumber MyRecord.Nam

31、e=My Name&recordnumber Put#1,recordnumber,MyRecord Next recordnumberClose#1End SubVisual BasicVisual Basic程序设计教学课件程序设计教学课件程序设计教学课件程序设计教学课件 现代教育技术中心现代教育技术中心现代教育技术中心现代教育技术中心读出文件的代码(读出文件的代码(Command2的单击事件)的单击事件)Private Sub Command2_Click()Dim MyRecord As RecordOpen TESTFILE For Random As#1 Len=Len(MyRec

32、ord)While Not EOF(1)Get#1,MyRecord Text1.Text=Text1.Text&Chr(10)&Chr(13)&Chr(10)&Chr(13)&MyRecord.ID&MyRecord.NameWendClose#1End SubVisual BasicVisual Basic程序设计教学课件程序设计教学课件程序设计教学课件程序设计教学课件 现代教育技术中心现代教育技术中心现代教育技术中心现代教育技术中心 二进制文件是一个字节流,文件系统并不解释各字节的意义,解释工作由具体的应用程序完成。以二进制方式访问文件有下述特点:可以直接访问文件中的所有数据。由应用程序

33、根据需要解释数据的意义。访问文件的语句不更改原始数据的所有内容。二进制文件每一次读写是以字节为单位对数据进行访问操作的,它允许用户读写或修改文件中的任何字节信息。当把二进制数据写入文件中时,使用Byte数据类型的数组,而不是String变量。String被认为包含的是字符,而二进制型数据可能无法正确地存储在String变量中。当要保持文件的尺寸尽量小时,应使用二进制文件。13.4 二进制文件Visual BasicVisual Basic程序设计教学课件程序设计教学课件程序设计教学课件程序设计教学课件 现代教育技术中心现代教育技术中心现代教育技术中心现代教育技术中心一、二进制文件的打开Open

34、 文件名 For Binary As#文件号二、二进制文件的写操作Put#文件号,位置,变量名写入长度等于变量长度的数据。三、二进制文件的读操作GET#文件号,位置,变量名 从指定位置开始读出长度等于变量长度的数据存入变量中,数据读出后移动变量长度位置,如果忽略位置,则表示从文件指针所指的位置开始读出数据,数据读出后移动变量长度位置。13.4 二进制文件Visual BasicVisual Basic程序设计教学课件程序设计教学课件程序设计教学课件程序设计教学课件 现代教育技术中心现代教育技术中心现代教育技术中心现代教育技术中心 例题 文件复制 Dim char As ByteDim File

35、Num1,FileNum2 as IntegerFileNum1=FreeFileOpen C:STUDENT.DAT For Binary As#FileNum1打开源文件打开源文件FileNum2=FreeFileOpen C:STUDENT.BAK For Binary As#FileNum2打开目标文件打开目标文件Do While Not EOF(FileNum1)Get#1,char 从源文件读出一个字节从源文件读出一个字节Put#2,char 将一个字节写入目标文件将一个字节写入目标文件LoopClose#FileNum1Close#FileNum213.4 二进制文件Visual

36、 BasicVisual Basic程序设计教学课件程序设计教学课件程序设计教学课件程序设计教学课件 现代教育技术中心现代教育技术中心现代教育技术中心现代教育技术中心 与文件系统相关的语句与文件系统相关的语句1.ChDir 语句 格式:ChDir path 功能:改变当前目录。例如:ChDir D:TMP2.ChDrive 语句 格式:ChDrive drive 功能:改变当前驱动器 说明:如果drive为“”,则当前驱动器将不会改变;如果drive中有多个 字 符,则ChDrive只会使用首字母。13.5文件操作语句文件操作语句Visual BasicVisual Basic程序设计教学课件

37、程序设计教学课件程序设计教学课件程序设计教学课件 现代教育技术中心现代教育技术中心现代教育技术中心现代教育技术中心3.MkDir 语句 格式:MkDir path 功能:创建一个新的目录。4.RmDir 语句 格式:RmDir path 功能:删除一个存在的目录 说明:只能删除空目录。5.FileCopy语句 格式:FileCopy source,destination 功能:复制一个文件。说明:FileCopy语句不能复制一个已打开的文件。Visual BasicVisual Basic程序设计教学课件程序设计教学课件程序设计教学课件程序设计教学课件 现代教育技术中心现代教育技术中心现代教育技术中心现代教育技术中心6.Name 语句 格式:Name oldpathname As newpathname 功能:重新命名一个文件或目录。说明:(1)Name具有移动文件的功能。(2)不能使用统配符“*”和“?”,不能对一个已打开的文件上使用Name语句。7.Kill语句 格式:Kill pathname 功能:删除文件。说明:pathname中可以使用统配符“*”和 “?”。例如:Kill*.TXT

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

当前位置:首页 > 技术资料 > 其他杂项

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁