Visual-Basic程序设计综合教程第9章-文件.ppt
《Visual-Basic程序设计综合教程第9章-文件.ppt》由会员分享,可在线阅读,更多相关《Visual-Basic程序设计综合教程第9章-文件.ppt(69页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第9章章 文件文件 在现代计算机系统中,要用到大量的程序和数在现代计算机系统中,要用到大量的程序和数在现代计算机系统中,要用到大量的程序和数在现代计算机系统中,要用到大量的程序和数据,由于内存容量有限,且不能长期保存,故平时据,由于内存容量有限,且不能长期保存,故平时据,由于内存容量有限,且不能长期保存,故平时据,由于内存容量有限,且不能长期保存,故平时总是把它们以文件的形式存放在外存中,需要时可总是把它们以文件的形式存放在外存中,需要时可总是把它们以文件的形式存放在外存中,需要时可总是把它们以文件的形式存放在外存中,需要时可随时将它们调入内存。所以,在操作系统中增加了随时将它们调入内存。所
2、以,在操作系统中增加了随时将它们调入内存。所以,在操作系统中增加了随时将它们调入内存。所以,在操作系统中增加了文件管理的功能,即文件系统,优秀的文件系统是文件管理的功能,即文件系统,优秀的文件系统是文件管理的功能,即文件系统,优秀的文件系统是文件管理的功能,即文件系统,优秀的文件系统是任何软件不可缺少的部分,好的文件系统可以使软任何软件不可缺少的部分,好的文件系统可以使软任何软件不可缺少的部分,好的文件系统可以使软任何软件不可缺少的部分,好的文件系统可以使软件用户安全地保存自己的数据,从而使软件更具有件用户安全地保存自己的数据,从而使软件更具有件用户安全地保存自己的数据,从而使软件更具有件用户
3、安全地保存自己的数据,从而使软件更具有强大的生命力,因而有广泛的应用。强大的生命力,因而有广泛的应用。强大的生命力,因而有广泛的应用。强大的生命力,因而有广泛的应用。通过本章学习,读者应掌握以下内容:通过本章学习,读者应掌握以下内容:【主要内容主要内容】l l掌握文件的读写操作过程。掌握文件的读写操作过程。l l掌握有关文件操作常用函数和命令的使用掌握有关文件操作常用函数和命令的使用方法。方法。l l掌握相关的文件系统控件。掌握相关的文件系统控件。9.1 9.1 引例引例引例引例 【引例引例引例引例】在名称为在名称为在名称为在名称为Form1Form1的窗体上建立一个文的窗体上建立一个文的窗体
4、上建立一个文的窗体上建立一个文本框(名称为本框(名称为本框(名称为本框(名称为Text1Text1,MultilineMultiline属性为属性为属性为属性为True,ScrollBarsTrue,ScrollBars属性为属性为属性为属性为2 2)和两个命令按钮(名)和两个命令按钮(名)和两个命令按钮(名)和两个命令按钮(名称分别为称分别为称分别为称分别为Cmd1Cmd1和和和和Cmd2Cmd2,标题分别为,标题分别为,标题分别为,标题分别为“读入数据读入数据读入数据读入数据”和和和和“排序显示保存排序显示保存排序显示保存排序显示保存”)(如图)(如图)(如图)(如图9.1(a)9.1(a
5、)所示)。程所示)。程所示)。程所示)。程序运行后,如果单击序运行后,如果单击序运行后,如果单击序运行后,如果单击“读入数据读入数据读入数据读入数据”按钮,则读入按钮,则读入按钮,则读入按钮,则读入“in.txtin.txt”文件中的文件中的文件中的文件中的100100个整数,放入一个数组中个整数,放入一个数组中个整数,放入一个数组中个整数,放入一个数组中(数组下界为(数组下界为(数组下界为(数组下界为1 1);如果单击);如果单击);如果单击);如果单击“排序显示保存排序显示保存排序显示保存排序显示保存”按按按按钮。,则对这钮。,则对这钮。,则对这钮。,则对这100100个整数从大到小进行排
6、序,把排个整数从大到小进行排序,把排个整数从大到小进行排序,把排个整数从大到小进行排序,把排序后的全部数据在文本框中显示出来,然后存入序后的全部数据在文本框中显示出来,然后存入序后的全部数据在文本框中显示出来,然后存入序后的全部数据在文本框中显示出来,然后存入文件文件文件文件”Result.txtResult.txt”中。图中。图中。图中。图9.1(a)9.1(a)【引例引例引例引例】设计设计设计设计界面界面界面界面要求:把数据写入文件要求:把数据写入文件要求:把数据写入文件要求:把数据写入文件“Result.txtResult.txt”用过程用过程用过程用过程putdataputdata来完
7、成。来完成。来完成。来完成。操作步骤操作步骤操作步骤操作步骤(1)(1)设计界面设计界面设计界面设计界面根据题目的要求,建立如图根据题目的要求,建立如图根据题目的要求,建立如图根据题目的要求,建立如图9.1(a)9.1(a)所示的用户界面。所示的用户界面。所示的用户界面。所示的用户界面。(2)(2)属性设置属性设置属性设置属性设置各控件的属性设置,见表各控件的属性设置,见表各控件的属性设置,见表各控件的属性设置,见表9.19.1。图9.1(a)【引例】设计界面表表表表9.19.1【引例引例引例引例】属性设置属性设置属性设置属性设置控件名称属性属性值窗体NameForm1Caption引例文本框
8、NameText1MultilineTrueScrollBars2命令按钮1NameCmd1Caption读入数据命令按钮2NameCmd2Caption排序显示保存(3)(3)编写代码编写代码编写代码编写代码 在窗体模块中定义变量在窗体模块中定义变量在窗体模块中定义变量在窗体模块中定义变量Dim number(1 To 100)As IntegerDim number(1 To 100)As IntegerDim i As Integer,j As Integer,t As IntegerDim i As Integer,j As Integer,t As Integer 命令按钮命令按钮命
9、令按钮命令按钮Cmd1(Cmd1(输入数据输入数据输入数据输入数据)中程序代码为:中程序代码为:中程序代码为:中程序代码为:Private Sub Cmd1_Click()Private Sub Cmd1_Click()Open Open c:in.txtc:in.txt For Input As#1 For Input As#1 For i=1 To 100 For i=1 To 100 Input#1,Input#1,number(inumber(i)Next Next Close#1 Close#1 For i=1 To 100 For i=1 To 100 a$=a$+a$=a$+St
10、r(number(iStr(number(i)+)+Next Next Text1=a$Text1=a$End SubEnd Sub 命令按钮命令按钮命令按钮命令按钮Cmd2(Cmd2(排序显示保存排序显示保存排序显示保存排序显示保存)中排序程序代码为:中排序程序代码为:中排序程序代码为:中排序程序代码为:Private Sub Cmd2_Click()Private Sub Cmd2_Click()For i=100 To 2 Step-1 For i=100 To 2 Step-1 For j=1 To i-1 For j=1 To i-1 If If number(jnumber(j)n
11、umber(jnumber(j+1)Then+1)Then t=t=number(jnumber(j+1)+1)number(jnumber(j+1)=+1)=number(jnumber(j)number(jnumber(j)=t)=t End If End If Next j Next j Next i Next i For i=1 To 100 For i=1 To 100 a$=a$+a$=a$+Str(number(iStr(number(i)+)+Next Next Text1=a$Text1=a$putdataputdata number(),100 number(),100En
12、d SubEnd Sub 标准模块中定义的标准模块中定义的标准模块中定义的标准模块中定义的SubSub过程过程过程过程(保存文件保存文件保存文件保存文件)Sub putdata(a()As Integer,n As Integer)Sub putdata(a()As Integer,n As Integer)Dim Dim sFilesFile As String As String sFilesFile=result.txtresult.txt Open Open App.PathApp.Path&sFilesFile For Output As#1 For Output As#1 For
13、i=1 To n For i=1 To n Print#1,Print#1,a(ia(i););Next Next Close#1 Close#1End SubEnd Sub(4)(4)运行程序运行程序运行程序运行程序 程序运行后,单击程序运行后,单击程序运行后,单击程序运行后,单击“读入数据读入数据读入数据读入数据”命令按钮,命令按钮,命令按钮,命令按钮,则读出文件则读出文件则读出文件则读出文件“in.txtin.txt”文件中的文件中的文件中的文件中的100100个整数,放入个整数,放入个整数,放入个整数,放入数组数组数组数组number(1 To 100)number(1 To 100)
14、中,并显示在文本框中,中,并显示在文本框中,中,并显示在文本框中,中,并显示在文本框中,运行结果如图运行结果如图运行结果如图运行结果如图9.1(b)9.1(b)所示,单击所示,单击所示,单击所示,单击“排序显示保存排序显示保存排序显示保存排序显示保存”按钮,则对这按钮,则对这按钮,则对这按钮,则对这100100个整数从大到小进行排序,并个整数从大到小进行排序,并个整数从大到小进行排序,并个整数从大到小进行排序,并把排序后的全部数据显示在文本框中,然后存入把排序后的全部数据显示在文本框中,然后存入把排序后的全部数据显示在文本框中,然后存入把排序后的全部数据显示在文本框中,然后存入文件文件文件文件
15、“Result.txtResult.txt”,见图,见图,见图,见图9.1(c)9.1(c)。图9.1(b)【引例】运行界面图9.1(c)【引例】运行界面分析分析分析分析:在在在在【引例引例引例引例】中,单击中,单击中,单击中,单击“读入数据读入数据读入数据读入数据”按钮,把按钮,把按钮,把按钮,把文件文件文件文件 in.txtin.txt 中数据读出来存放在数组中数据读出来存放在数组中数据读出来存放在数组中数据读出来存放在数组number(100)number(100)中,单击中,单击中,单击中,单击“排序显示保存排序显示保存排序显示保存排序显示保存”按钮,按钮,按钮,按钮,对数组对数组对数
16、组对数组number(100)number(100)中数据进行排序处理后,把中数据进行排序处理后,把中数据进行排序处理后,把中数据进行排序处理后,把结果写入文件结果写入文件结果写入文件结果写入文件 result.txtresult.txt 中。中。中。中。【引例引例引例引例】中涉及中涉及中涉及中涉及到有关文件读写操作的问题,读者应掌握如何把到有关文件读写操作的问题,读者应掌握如何把到有关文件读写操作的问题,读者应掌握如何把到有关文件读写操作的问题,读者应掌握如何把数据从文件中读出,又如何把数据写入文件。这数据从文件中读出,又如何把数据写入文件。这数据从文件中读出,又如何把数据写入文件。这数据从
17、文件中读出,又如何把数据写入文件。这是本章的重点,本章对文件的读写操作作详细说是本章的重点,本章对文件的读写操作作详细说是本章的重点,本章对文件的读写操作作详细说是本章的重点,本章对文件的读写操作作详细说明。明。明。明。9.2 文件分类文件分类根据不同的分类标准,文件可分为不同的类型。根据不同的分类标准,文件可分为不同的类型。根据不同的分类标准,文件可分为不同的类型。根据不同的分类标准,文件可分为不同的类型。1 1 根据数据的性质分类根据数据的性质分类根据数据的性质分类根据数据的性质分类(1)(1)程序文件程序文件程序文件程序文件这种文件存放的是可由计算机执行的程序,包括原这种文件存放的是可由
18、计算机执行的程序,包括原这种文件存放的是可由计算机执行的程序,包括原这种文件存放的是可由计算机执行的程序,包括原文件和可执行文件,如文件和可执行文件,如文件和可执行文件,如文件和可执行文件,如.exe,.Frm,.Vbpexe,.Frm,.Vbp等。等。等。等。(2)(2)数据文件数据文件数据文件数据文件用来存放普通数据,如数据库表等。用来存放普通数据,如数据库表等。用来存放普通数据,如数据库表等。用来存放普通数据,如数据库表等。2 2 根据存取方式和结构分类根据存取方式和结构分类根据存取方式和结构分类根据存取方式和结构分类(1)(1)顺序文件顺序文件顺序文件顺序文件 顺序文件访问模式的规则最
19、简单,读出时从第顺序文件访问模式的规则最简单,读出时从第顺序文件访问模式的规则最简单,读出时从第顺序文件访问模式的规则最简单,读出时从第一条记录一条记录一条记录一条记录“顺序顺序顺序顺序”读到最后一条记录,写入时也读到最后一条记录,写入时也读到最后一条记录,写入时也读到最后一条记录,写入时也一样,不可以在数据之间乱跳,例如读完第一条一样,不可以在数据之间乱跳,例如读完第一条一样,不可以在数据之间乱跳,例如读完第一条一样,不可以在数据之间乱跳,例如读完第一条记录后直接读第三条记录。顺序文件专门用来处记录后直接读第三条记录。顺序文件专门用来处记录后直接读第三条记录。顺序文件专门用来处记录后直接读第
20、三条记录。顺序文件专门用来处理文本文件,文本文件中的每一行字符串就是一理文本文件,文本文件中的每一行字符串就是一理文本文件,文本文件中的每一行字符串就是一理文本文件,文本文件中的每一行字符串就是一条记录,每一条记录可长可短条记录,每一条记录可长可短条记录,每一条记录可长可短条记录,每一条记录可长可短,记录长度可以不相记录长度可以不相记录长度可以不相记录长度可以不相等,并且记录与记录之间是以等,并且记录与记录之间是以等,并且记录与记录之间是以等,并且记录与记录之间是以“换行换行换行换行”字符作为字符作为字符作为字符作为分隔符。分隔符。分隔符。分隔符。(2)(2)随机文件随机文件随机文件随机文件
21、在随机文件访问模式中,文件中每条记录长度在随机文件访问模式中,文件中每条记录长度在随机文件访问模式中,文件中每条记录长度在随机文件访问模式中,文件中每条记录长度都是相同的。记录与记录之间不需要特殊的分隔都是相同的。记录与记录之间不需要特殊的分隔都是相同的。记录与记录之间不需要特殊的分隔都是相同的。记录与记录之间不需要特殊的分隔符符符符,每个记录都有记录号每个记录都有记录号每个记录都有记录号每个记录都有记录号,根据用户给出的记录号根据用户给出的记录号根据用户给出的记录号根据用户给出的记录号,存取数据到指定的位置,因此,与顺序文件模式存取数据到指定的位置,因此,与顺序文件模式存取数据到指定的位置,
22、因此,与顺序文件模式存取数据到指定的位置,因此,与顺序文件模式相比,它的优点是存取速度快,更新容易。相比,它的优点是存取速度快,更新容易。相比,它的优点是存取速度快,更新容易。相比,它的优点是存取速度快,更新容易。3 3 根据编码方式分类根据编码方式分类根据编码方式分类根据编码方式分类(1)ASCII(1)ASCII文件文件文件文件又称为文本文件,它以又称为文本文件,它以又称为文本文件,它以又称为文本文件,它以ASCIIASCII字符方式保存文件。字符方式保存文件。字符方式保存文件。字符方式保存文件。(2)(2)二进制文件二进制文件二进制文件二进制文件二进制文件是最原始的文件类型,它直接把二进
23、制二进制文件是最原始的文件类型,它直接把二进制二进制文件是最原始的文件类型,它直接把二进制二进制文件是最原始的文件类型,它直接把二进制编码存放在文件中,没有什么格式。二进制文件编码存放在文件中,没有什么格式。二进制文件编码存放在文件中,没有什么格式。二进制文件编码存放在文件中,没有什么格式。二进制文件访问模式是以字节数来定位数据,允许程序按所访问模式是以字节数来定位数据,允许程序按所访问模式是以字节数来定位数据,允许程序按所访问模式是以字节数来定位数据,允许程序按所需的任何方式组织和访问数据,也允许对文件中需的任何方式组织和访问数据,也允许对文件中需的任何方式组织和访问数据,也允许对文件中需的
24、任何方式组织和访问数据,也允许对文件中的各字节数据进行存取访问和改变。以二进制的的各字节数据进行存取访问和改变。以二进制的的各字节数据进行存取访问和改变。以二进制的的各字节数据进行存取访问和改变。以二进制的形式保存文件,占用存储空间比较小。形式保存文件,占用存储空间比较小。形式保存文件,占用存储空间比较小。形式保存文件,占用存储空间比较小。9.3 9.3 文件操作语句与函数文件操作语句与函数文件操作语句与函数文件操作语句与函数文件被打开后,自动生成一个文件指针,文件的读文件被打开后,自动生成一个文件指针,文件的读文件被打开后,自动生成一个文件指针,文件的读文件被打开后,自动生成一个文件指针,文
25、件的读或写就从这个指针所指的位置开始。用或写就从这个指针所指的位置开始。用或写就从这个指针所指的位置开始。用或写就从这个指针所指的位置开始。用AppendAppend方式打开一个文件后,文件指针指向文件的末尾,方式打开一个文件后,文件指针指向文件的末尾,方式打开一个文件后,文件指针指向文件的末尾,方式打开一个文件后,文件指针指向文件的末尾,而如果用其它几种方式而如果用其它几种方式而如果用其它几种方式而如果用其它几种方式(如:如:如:如:Input,OutputInput,Output等等等等)打打打打开文件,则文件指针都指向文件的开头。完成一开文件,则文件指针都指向文件的开头。完成一开文件,则
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Visual Basic 程序设计 综合 教程 文件
限制150内