bsp; eoln(f):用Eoln(f)可判断是否到了文件f某行的末尾,若是则Eoln(f)的值为True,否则为False。这个行结束符不能读给一个变量,应用Readln(f)跳过它,而用Writeln(f)可在文件f的某位置得到行结束符。 二、文件的操作 文本文件中引入行的概念,它由一系列行组成,行与行之间用行结束标记隔开,最后有一个文件结束标记。 1、文本文件的操作步骤: ①文件使用前,必须对文件类型和文件标识符进行说明;var f1,f2:text; ②建立程序中的文件(内部文件)与磁盘上实际文件(外部文件)联系;assign(filevar,filename);filevar是文件变量,在变量说明部分预先定义;filename 是合法文件名的字符串表达式,把其赋值给filevar,以后对filevar的操作即对文件filename的操作。如:assign(f1, 'input.txt'); 'input.txt'是实际文件名,默认在Turbo Pascal安装目录下,也可使用文件的绝对路径。如: assign(f1, 'a:input.txt');也可用read语句读入filename:如: read(filename); assign(f2, filename); ③打开文件,将指针指向开始位置;rewrite(filevar):创建一个新的磁盘文件,并以写的方式打开该文件,将指针指向开始位置。write(filevar,var1,var2,…,varn);向文件filevar写入变量var1,var2,…,varn的值,每向文件写入一个数据,指针指向下移一个位置。append(filevar);以写的方式打开一个已存在的文本文件,指针指向文件尾,可用write语句给文件填加新内容。rewrite打开的文件是空文件,而append不破坏被打开的文件。 ④对文件进行读、写操作:reset(filevar);打开一个已存在的文件,并把指针指向文件的开始位置。read(filevar,var1,var2,…,varn);从文件filevar读取若干数据,分别赋值于var1,var2,…,varn。每读取一个数据,指针指向下移一个位置。readln(filevar,var1,var2,…,varn); 指针指向下一行的开始位置。读取若干数据,分别赋值于var1,var2,…,varn。每读取一个数据,指针指向下移一个位置。 ⑤使用文件后,一定要关闭文件。 close(filevar);读、写完毕后,必须关闭文件,以保证文件的完整性和可靠性。 例1、参赛信息输出(99’安徽省赛第0题) 请向文件中依次输出以下三行信息: *** Ⅰ *** XXX Your name 其中XXX为参赛号,Your name为你的汉语拼音名。 var f:text; begin assign(f, 'lx12_1.out'); rewrite(f) writeln(f,'*** 1 ***'); writeln(f,'19990101'); writeln(f,'Cornell'); close(f); end. 例2、从键盘上输入一段正文,用
程序写入指定的文件中,并在显示器输出。var c:char;str:string[20];f:text;beginwrite('input a file name:'); readln(str); { 输入文件名,建立新文件}assign(f,str); { 将内部变量名与外部文件建立关联 }rewrite(f); { 以写状态打开该文件 }while not eof do { 文件结束标志Ctrl+z } beginwhile not eoln do { 行未结束继续写 } begin read(c); write(f,c) end;readln;writeln(f) &