




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、文件操作文件操作 不存储程序的计算机还不如一个强有力的不存储程序的计算机还不如一个强有力的计算器,最早购买不带磁盘驱动器的用户计算器,最早购买不带磁盘驱动器的用户很快就明白了这一点很快就明白了这一点当他们关掉计算当他们关掉计算机的电源时,其工作成果也很就随之消失机的电源时,其工作成果也很就随之消失了。因而,当你的计算机具备了一个软盘了。因而,当你的计算机具备了一个软盘驱动器或者还有一个硬盘时,学习使用磁驱动器或者还有一个硬盘时,学习使用磁盘文件对编写有用的程序来说就是很重要盘文件对编写有用的程序来说就是很重要的了。下面就来介绍的了。下面就来介绍Pascal文件的有关知文件的有关知识。识。 文件
2、的概念文件的概念 文件是指由一系列相同类型数据组成的一个数据文件是指由一系列相同类型数据组成的一个数据序列,是一种由用户定义的构造型的数据类型。序列,是一种由用户定义的构造型的数据类型。作为系统提供的一种手段,是计算机与各类设备作为系统提供的一种手段,是计算机与各类设备进行通讯的媒介,从而用以实现信息在程序内外进行通讯的媒介,从而用以实现信息在程序内外的交换。对于文件我们实际上早已在使用,前面的交换。对于文件我们实际上早已在使用,前面出现的出现的Pascal程序中的输入、输出就是应用文件程序中的输入、输出就是应用文件的方法来实现的,这些文件的名字是的方法来实现的,这些文件的名字是Pascal的
3、标的标准文件准文件“INPUT”和和“OUTPUT”,它们分别对应,它们分别对应于标准输入设备和标准输出设备,在于标准输入设备和标准输出设备,在Free Pascal中可省略不写。中可省略不写。文件的分类文件的分类 在在Pascal的数据文件中,按文件结构形式划的数据文件中,按文件结构形式划分,以分,以ASCII代码形式(字符形式)存放的称代码形式(字符形式)存放的称为为TEXT类型文件,也称为文本文件,这是我类型文件,也称为文本文件,这是我们经常要用到的文件类型。还有一种以二进们经常要用到的文件类型。还有一种以二进制代码形式存放的文件,称为制代码形式存放的文件,称为File类型文件,类型文件
4、,它又称为类型文件。我们平时用到的是第一它又称为类型文件。我们平时用到的是第一种文件类型:文本文件。种文件类型:文本文件。文本文件特征 (1)当程序开始把数据写(输出)到文件中去时,)当程序开始把数据写(输出)到文件中去时,总是从文件的起始位置开始。也就是不能从文件的中总是从文件的起始位置开始。也就是不能从文件的中间位置开始存放数据。间位置开始存放数据。 (2)输出的数据是一个接一个地存放在文件中的。)输出的数据是一个接一个地存放在文件中的。 (3)当程序从文件中读(输入)数据到内存中时,)当程序从文件中读(输入)数据到内存中时,总是从文件的起始位置开始。也就是不可能从文件的总是从文件的起始位
5、置开始。也就是不可能从文件的中间的某个位置开始读入数据。中间的某个位置开始读入数据。 (4)读数据时,必须按存入文件时的顺序一个接一)读数据时,必须按存入文件时的顺序一个接一个的读入内存中去。个的读入内存中去。 (5)对同一个文件的读写操作不能交叉进行。)对同一个文件的读写操作不能交叉进行。 文本文件的定义 文本文件不是简单地由某类型的元素序列文本文件不是简单地由某类型的元素序列所组成,它的基本元素是字符,由它们构所组成,它的基本元素是字符,由它们构成行,若干行组成一份原文。由于各行的成行,若干行组成一份原文。由于各行的长度可以不同,所以文本文件只能顺序地长度可以不同,所以文本文件只能顺序地处
6、理。处理。 文本文件的定义如下:文本文件的定义如下: var fp1,fp2:text;文件类型的常用命令 (1) assign 语法:语法:assign(filevar,filename); Filename是合法的文件名的字符串表达式,这个名字是合法的文件名的字符串表达式,这个名字赋给文件变量赋给文件变量filevar,在程序中对文件变量的操作即,在程序中对文件变量的操作即为对磁盘文件为对磁盘文件Filename的操作。的操作。 如:如:assign(fp1,abc.in); assign(fp2,abc.out); 这时这时fp1,fp2是文件类型变量,是文件类型变量,abc.in、ab
7、c.out是实际是实际文件名字,这样文件变量文件名字,这样文件变量fp1与与abc.in、fp2与与abc.out、就建立起联系了,在程序中就建立起联系了,在程序中fp1就可以代表就可以代表abc.in文件、文件、fp2就可以代表就可以代表abc.out文件使用了。文件使用了。 (2)rewrite 语法:语法:rewrite(filevar) 功能:创建一个新的磁盘文件,并以写的方式打功能:创建一个新的磁盘文件,并以写的方式打开该文件,初始化文件为空,文件指针指向开始开该文件,初始化文件为空,文件指针指向开始位置。在使用此命令前需先用位置。在使用此命令前需先用assign过程,给文过程,给文
8、件变量一个实在的文件名。件变量一个实在的文件名。 如:如:rewrite(fp2); 这时将在磁盘上工作目录下新这时将在磁盘上工作目录下新建一个空文件建一个空文件abc.out,并打开该开件。若以前,并打开该开件。若以前工作目录下存在工作目录下存在abc.out,则会将原来的文件清,则会将原来的文件清空,并将文件指针指向开始位置。空,并将文件指针指向开始位置。 (3)reset 语法:语法:reset(filevar); 功能:打开一个已存在的文件,并将文件指针指功能:打开一个已存在的文件,并将文件指针指向开始位置,表示可开始读入文件,但不能向文向开始位置,表示可开始读入文件,但不能向文件写数
9、据,同样件写数据,同样filevar文件名必须存在。文件名必须存在。 如:如:reset(fp1); 打开打开fp1所代表的文件所代表的文件abc.in,并将文件指针指向开始位置。如果工作目录下不并将文件指针指向开始位置。如果工作目录下不存在存在abc.in,将会出现错误信息,将会出现错误信息2。 (4)close 语法:语法:close(filevar) 功能:关闭一个文件,无论是向磁盘写文件,还功能:关闭一个文件,无论是向磁盘写文件,还是从磁盘上读取文件的内容,当读、写完毕时都是从磁盘上读取文件的内容,当读、写完毕时都必须用必须用close命令关闭已打开的文件,以保证文件命令关闭已打开的文
10、件,以保证文件的完整性和可靠性,否则将引起文件处理错误。的完整性和可靠性,否则将引起文件处理错误。 如:如:close(fp2); 这时将关闭文件这时将关闭文件fp2,对于被读,对于被读的文件,可以关闭也可以不关闭,但对于被写的的文件,可以关闭也可以不关闭,但对于被写的文件,程序结束时,必须关闭,否则,所有写入文件,程序结束时,必须关闭,否则,所有写入的信息将不会被写入文件。的信息将不会被写入文件。 (5)read或或readln 语法:语法:read(filevar,var1,var2,varm) 功能:从文件功能:从文件filevar中读出若干个数中读出若干个数,赋给赋给变量变量var1,
11、,varm,这里使用规则和,这里使用规则和read原来的使用方法相同,只不过在原来原来的使用方法相同,只不过在原来变量前加一个文件类型变量变量前加一个文件类型变量filevar而已。而已。 如:如:read(fp1,a,b);这时将从这时将从abc.in文件读文件读出两个量分别赋值给出两个量分别赋值给a和和b两个变量。两个变量。 (6)write或或writeln 语法:语法:write(filevar, var1,var2,varm); 功能:向文件功能:向文件filevar中写入若干个数。这中写入若干个数。这里使用规则和里使用规则和write原来的使用方法相同,原来的使用方法相同,只不过在
12、原来变量前加一个文件类型变量只不过在原来变量前加一个文件类型变量filevar而已。而已。 如:如:write(fp2,a,b);这时将向这时将向abc.out文件文件写入写入a和和b两个变量的值。两个变量的值。 (7)eoln函数函数 语法:语法:eoln(filevar); 功能:行结束函数,其中文件功能:行结束函数,其中文件filevar一定一定为为text类型,函数值为布尔型。当文件指类型,函数值为布尔型。当文件指针向回车换行符时,函数值为针向回车换行符时,函数值为true(真),(真),否则为否则为false(假假)。 (8)eof函数(相当于函数(相当于seekeof()) 语法:
13、语法:eof(filevar) 功能:文件结束函数,其中文件功能:文件结束函数,其中文件filevar是是文件类型变量,函数值是布尔值。当文件文件类型变量,函数值是布尔值。当文件指针指向文件结束标志时,函数值为指针指向文件结束标志时,函数值为true (真真),否则为,否则为false(假假)。它通常写作。它通常写作seekeof。该函数一般用以判断文件是否。该函数一般用以判断文件是否结束。结束。文件类型输入输出一般用法 在我们使用文件类型输入输出时,通常用标准输入文件在我们使用文件类型输入输出时,通常用标准输入文件input和标准的输出和标准的输出文件文件output来表示文件类型变量,这样
14、在程序中的输入输出操作就和不用来表示文件类型变量,这样在程序中的输入输出操作就和不用文件类型输入输出格式一样了。具体形式如下:文件类型输入输出格式一样了。具体形式如下:文件输入输出一般格式文件输入输出一般格式:程序体的开始处加上程序体的开始处加上:assign(input,输入文件名输入文件名); 将输入文件和标准输入文件将输入文件和标准输入文件input建立起联系建立起联系reset(input); 打开输入文件打开输入文件 assign(output,输出文件名输出文件名); 将输出文件和标准输出文件将输出文件和标准输出文件output建立起联系建立起联系rewrite(output);
15、建立输出文件建立输出文件 程序体的结尾处加上程序体的结尾处加上:close(input); 关闭输入文件关闭输入文件close(output); 关闭输出文件关闭输出文件注意注意:在运行程序前在运行程序前,一定要在一定要在FP的工作目录中建立一个输入文件。否则将的工作目录中建立一个输入文件。否则将出错。出错。 例:读入两个整数,输出两个数的和。用文件类型输入输出。例:读入两个整数,输出两个数的和。用文件类型输入输出。文件名为:文件名为:abc.pas测试数据:测试数据:输入文件:输入文件:abc.in152 908输出文件:输出文件:abc.out1060程序程序1: program abc;
16、 var fp1,fp2:text; a,b,c:longint; begin assign(fp1,abc.in); reset(fp1); assign(fp2,abc.out); rewrite(fp2); read(fp1,a,b); c:=a+b; write(fp2,c); close(fp1); close(fp2); end.程序程序2: program abc; var a,b,c:longint; begin assign(input,abc.in); reset(input); assign(output,abc.out); rewrite(output); read(a
17、,b); c:=a+b; write(c); close(input); close(output); end.我们运行一下,发现这两个程序的功能是一样的,因此,我们用我们运行一下,发现这两个程序的功能是一样的,因此,我们用文件类型输入输出时,一般用程序文件类型输入输出时,一般用程序2的形式。的形式。例:读入长方形的长和宽,求它的周长和面积。用文件类例:读入长方形的长和宽,求它的周长和面积。用文件类型输入输出。文件名为:型输入输出。文件名为:cfx.pas保留两位小数,两个数字隔一空格。保留两位小数,两个数字隔一空格。测试数据:测试数据:输入文件输入文件cfx.in:2.5 3.6输出文件输出文件cfx.out:12.20 9.00程序如下:程序如下:program changfx; var a,b,c,s:real; begin assign(input,cfx.in); reset(input); assign(output,cfx.out); rewrite(output); read(a,b); c:=2*(a+b); s:=a*b; writeln(c:0:2, ,s:0:2); close(input); close(output); end. 练习题1(程序名:(程序名:ga07.as)已知三角形的底)已知三角形的底a和高和高h的值,输出
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 辽宁省丹东市本年度(2025)小学一年级数学部编版能力评测(上学期)试卷及答案
- 甘肃省河西五市2025年高三压轴卷英语试卷含答案
- 流体力学考试模拟题(附参考答案)
- 2025届新疆维吾尔自治区克拉玛依市第十三中学高考英语三模试卷含解析
- 2025届四川省南充市高三下学期第三次诊断考试物理试题(原卷版+解析版)
- 翻译速度与质量平衡训练考核试卷
- 河湖治理工程生态景观设计考核试卷
- 电视机制造业的法律法规遵守与合规性考核试卷
- 纺织设备库存管理与优化考核试卷
- 珠宝首饰行业物流与供应链优化策略考核试卷
- 2025年中考语文课内名著阅读专题复习:第10部 《水浒传》课件
- 2025年希望数学五年级培训题(含答案)
- 保洁投标书范本
- 教育行业媒体宣传服务合同
- 社会医学(含考试)学习通超星期末考试答案章节答案2024年
- 新能源汽车充电桩项目可行性研究报告模板及范文
- 第四单元 资本主义制度的确立 说课课件-高一下学期统编版(2019)必修中外历史纲要下
- 2024-2025学年七年级地理下册 7.4 俄罗斯课时1说课稿 (新版)新人教版
- 2024年临时用工管理制度范文(五篇)
- 2 我为家乡做代言(教案)人民版劳动四年级下册
- 【专项训练】相似三角形五大模型+训练(共45题)(原卷版+解析)
评论
0/150
提交评论