В прошлых уроках мы научились открывать текстовый файл для чтения с помощью процедуры Reset, а также для записи с помощью процедуры Rewrite. Причем, при записи в файл вся содержащаяся в нем информация стирается. Для того чтобы при записи в файл старая информация не стиралась, используется процедура Append. Процедура Append открывает файл для дописывания в него информации.
Использование процедуры Append для дописывания информации в конец файла.
В строке №8 записываем процедуру Append. Данная процедура открывает файл, указанный в круглых скобках после слова Append, для записи в него информации. Причем если в файле уже содержится какая-то информация, то она не стирается, а новая информация дописывается в конец файла. В прошлом уроке мы записали в файл «text.txt» слова «Avatar», « Terminator», «Mission Impossible». После запуска программы напишем какое-нибудь слово, например, Pascal.
После этого посмотрим наш текстовый файл «text.txt».
Как видите, старая информация осталась на своем месте, а в конец файла была дописана новая информация.
Предыдущая статья : Запись в текстовый файл (продолжение).
Оглавление : Уроки Паскаль. Файлы.
Следующая статья : Работа с двумя текстовыми файлами.
Комментарии
Program file5;
Uses crt;
var fl,f2:text;
str,str1:string;
begin
clrscr;
assign (fl, 'programs\text. txt'); // этот файл у нас уже есть
assign (f2, 'programs\text. txt2'); //этот файл будет создан автоматически
reset (fl); //открываем 1-ый файл для чтения
rewrite (f2); //открываем 2-ой файл для записи
readln (str); // вводим какое-нибудь слово (например, «Pascal»)
writeln (f2,str); //записываем это слово во 2-ой файл
while not eof (fl) do
begin
readln (fl,str1); //в переменную «str1» считываем информацию из 1-ого файла
append (f2); //открываем 2-ой файл для дописывания. Т.к. ранее он был открыт для записи, он автоматически закроется и снова откроется уже для дописывания информации
writeln (f2,str1); //дописываем во 2-ой файл информацию из 1-го файла.
end;
close(fl); //закрываем 1-ый файл
erase (fl); /удаляем его
close (f2); //закрываем 2-ой файл
rename (f2,'programs\text. txt'); /2-му файлу присваиваем имя первого файла
end.