问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

pascal记录写入文件应该怎么做

发布网友 发布时间:2024-09-30 22:13

我来回答

2个回答

热心网友 时间:2024-10-31 20:33

较长,我只复制了一点,其他的在http://www.sxzx.com/pascal/
的文件操作里

在DOS操作中,我们所谈及的文件称之为外部文件。外部文件是存储在外部设备上,如在外存储器上,可由计算机操作系统进行管理,如用dir、type等命令直接对文件进行操作。

Pascal 所谈及的文件,称之为内部文件。内部文件的特点是文件的实体(实际文件)也是存储在外存储器上,成为外部文件的一分子,但在使用时必须在程序内部以一定的语句与实际文件联系起来,建立一一对应的关系,用内部文件的逻辑名对实际文件进行操作。内部文件的逻辑名必须符合Pascal语言标识符的取名规则。

Pascal中的文件主要用于存放大量的数据。如:成绩管理,原始数据很多,使用文件先将其存入磁盘,通过程序读出文件中的数据再进行处理,比不使用文件要来得方便、有效。

Pascal中的一个文件定义为同一类型的元素组成的线性序列。文件中的各个元素按一定顺序排列,可以从头至尾访问每一个元素,从定义上看,文件与数组相似,但它们之间有着明显不同的特征,主要表现在:

(1)文件的每一个元素顺序存贮于外部文件设备上(如磁盘上)。因此文件可以在程序进行前由Pascal程序或用文字编辑软件,如edit、ws、Turbo Pascal的edit命令等产生,或在运行过程中由程序产生,且运行完后,依然存贮在外部设备上。
(2)在系统内部,通过文件指针来管理对文件的访问。文件指针是一个保存程序在文件中位置踪迹的计算器,在一固定时刻,程序仅能对文件中的一个元素进行读或写的操作,在向文件写入一个元素或从文件读取一个元素后,相应的文件指针就前进到下一元素位置。而数组是按下标访问。
(3)在文件类型定义中无需规定文件的长度即元素的个数,就是说元素的数据可动态改变,一个文件可以非常之大,包含许许多多元素,也可以没有任何元素,即为一个空文件。而数组的元素个数则是确定的。

使用文件大致有以下几个步骤;
(1)说明文件类型,定义文件标识符;
(2)建立内部文件与外部文件的联系;
(3)打开文件;
(4)对文件进行操作;
(5)关闭文件。
Turbo Pascal将文件分为三类:文本文件(顺序)、有类型文件(顺序或随机)和无类型文件(顺序或随机)。下面将介绍这些文件及其操作。

一、文本文件

文本文件又称为正文文件或行文文件,可供人们直接阅读,是人机通信的基本数据形式之一。文本文件可用文字编辑程序(如DOS的edit或Turbo Pascal的编辑命令edit)直接建立、阅读和修改, 也可以由PASCAL程序在运行过程中建立。

1、文本文件的定义:
文本文件的类型为TEXT,它是由ASCII字符组成的,是Pascal提供的标准文件之一。标准文件 TEXT已由Pascal说明如下:
TYPE TEXT=FILE OF CHAR;
因此,TEXT同标准类型INTEGER、READ等一样可以直接用于变量说明之中,无需再由用户说明。 例如:
VAR F1,F2:TEXT;
这里定义了两个文本文件变量F1和F2。

2、文本文件的建立
文本文件的建立有两种方法:

(1)直接用Turbo Pascal的Edit建立原始数据文件。
例1 将下表中的数据存入名为A.dat的文件中。
3 4
29 30 50 60
80 90 70 75
60 50 70 45
操作步骤:
①进入Turbo Pascal的编辑状态;
②输入数据;
③存盘,文件名取A.dat。
此时,已将数据存入文本文件A.dat中。文本文件也可用DOS中的Edit等软件建立。

(2)用程序的方式建立中间数据或结果数据文件。
用程序的方式建立文件操作步骤为:
①定义文本文件变量;

②把一外部文件名赋于文本文件变量,使该文本文件与一相应外部文件相关联;
命令格式:ASSIGN(f,name)
f为定义的文本文件变量
name为实际文件文件名
如:ASSIGN(F1,`FILEIN.DAT`)
或:ASSIGN(F1,`PAS\FILEIN.RES`)
这样在程序中对文本文件变量F1的操作,也就是对外部实际文件`FILEIN.DAT`或`FILEIN.RES`的操作。上例中文件`FILEIN.DAT`是存贮在当前目录中,而文件`FILEIN.RES`则是存贮在PAS子目录中。

③打开文本文件,准备写;
命令格式1:REWRITE(f)
功能:创建并打开新文件准备写,若已有同名文件则删除再创建
命令格式2:APPEND(f)
功能:打开已存在的文件并追加

④对文件进行写操作;
命令格式:WRITE(f,<项目名>)
或:WRITELN(f,<项目名>)
功能:将项目内容写入文件f中

⑤文件操作完毕后,关闭文件。
命令格式:CLOSE(f)

参考资料:http://www.sxzx.com/pascal/

热心网友 时间:2024-10-31 20:34

(1)assign过程
形式:assign(f,str);
功能:将文件名字符串str赋给文件变量f,程序对文件变量f的操作代替对文件str的操作。
(2)rewrite过程
形式:rewrite(f);
功能:建立并打开一个新的允许写磁盘文件,其文件名必须先由assign过程赋给变量f。这时,指向文件元素的指针指向第一个元素,rewrite过程所建立的文件为空文件。
(3)reset过程
形式:reset(f);
功能:打开一个已经存在的磁盘文件,其文件名必须先由assign过程赋给变量f,该文件只能读,指向文件元素的指针指向第一个元素。
(4)read过程
形式:read(f,var表);
功能:从磁盘文件f中,将数据依次读到var表表示的各个变量中。
(5)write过程
形式:write(f,var表);
功能:将var表所表示的各个变量的值依次写到磁盘文件f上。
(6)close过程
形式:close(f);
功能:关闭和f关联的磁盘文件,在写操作时自动产生一个文件结束标志。
(7)seek过程
形式:seek(f,n);
功能:把文件指针移到f指明文件的第n个元素。
(8)eof函数
形式:eof(f);
功能:若文件指向文件尾,则返回true,否则返回false。
对有类型文件的写操作步骤为:
assign(f,str);
rewrite(f);
write(f,var表);
close(f);
对有类型文件的读操作步骤为:
assign(f,str);
reset(f);
read(f,var表);
close(f);
例:在磁盘上建立一个1~50的平方数的数据文件zhoufei.dat。要求以一个数,这个数的平方数的格式写入。
program zhoufei;
var f:file of integer;
i:integer;
begin
assign(f,'zhoufei.dat');
rewrite(f);
for i:=1 to 50 do write(f,i,sqr(i));
close(f)
end.
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
健康快乐歌词 美的电热水器美肤浴原理 UPS蓄电池寿命是多长 怎么正确使用保养UPS不间断电源 2000年属什么生肖配对最好 一根甘蔗有多少糖分(一根甘蔗相当于几碗米饭的热量 方法) 一根甘蔗含糖量多少(糖尿病能喝甘蔗水吗 步骤详解) ...1 4 5 B超结果:肝功能正常 脾大,脾胀 HBV-DNA〈1000为阳性 这个需 ... ...还有两个老人要养,这种情况能给多少抚养费? 离婚分居两年八个月!对方要求一次性付清抚养费另一方要求一年一给法院会... 搞笑动画《梦游》的剧情设计是怎样的? 关于Turbo Pascal的问题(3) 建筑企业税 建筑业地税缴纳什么税 庐山自驾游攻略住宿,庐山自驾旅游住哪里方便点儿 哈尔滨到北京的火车停运了吗? 奥奇传说我打得过神诺亚吗? 我满级的有神水空皇,万象密踪,诺亚,帝释天... 《奥奇传说》神诺亚解析:探秘神秘力量的传说战士 奥奇传说神诺亚和魔修尔谁厉害 ...主要集中于脑门下巴靠近嘴边的脸颊。痘印深。掉发一年严重。求... 一年前阴道口皮下左侧起了个类似蛋黄大小疙瘩,硬的,一直没检查,只是按 ... 我想去珠海市人民医院割包皮,想问一下具体的价钱,还有一些注意... ...下包皮的环,直接去门诊手术室就可以了么?需不需要预约? 我在珠海割包皮价格是多少? 北美最大的家居电商平台—Wayfair ! 哪些是可保风险 家具保险是如何办理投保的? 工商部门用的执法记录仪品牌有哪些?哪个牌子质量比较好?性价比高的 现急需一台现场执法记录仪,需售后服务好的,哪家好啊? 公安现场执法记录仪哪家公司的牌子好? 生男孩的秘诀是什么呢?吃碱性的食物可以生儿子吗 关于Turbo Pascal的问题(2) Turbo Pascal表达式 皮皮鱼是什么鱼? ...爆高音的时候歌词是“似是而非 ,………”后面忘了,有谁知道吗... 怎么打开外刚内柔的女孩子的心扉? 设f(x)为定义在R上的奇函数,当x≥0时f(x)=2的x次方+2x+b(b为常数... ...函数.当x≥0时,f(x)=2 x +2x+b(b为常数),则f(-1)= A.1 B.3 C... ...当x大于等于0时,f(x)=2的x次幂+2x+b(b为常数,则f(-1)等于多少_百度... ...当x≥0时,f(x)=2x+2x+b (b为常数),则f(-1)=___? ...或等于0时,f(x)=2的x次方+2x+b(b为常数),则f(-1)=? ...x大于等于0时,f(x)=2的x次+2x+b(b为常数),则f(-1)=? 999元AMD双核台式DIY主机,真的能流畅办公吗? 999元组装电脑能流畅看网络电视吗? 1999元AMD A10-5800K四核DIY电脑,真的性价比超高吗? 请各位大神给个1500元以下的DIY台式主机配置单,能流畅玩CF就行!主要... 注册香港公司究竟有什么好处? 今天去医院眼科电脑验光的单子真的看不懂,想请行家给解答下,谢谢! 上午去眼科医院验光,单子看不懂 上海同济佳苑酒店公寓详细信息 上海同济佳苑酒店公寓交通指南