Program Txt_file; {Пример обработки текстового файла}
Type
fil = text;
Var
Fl, Fl_New: fil;
Name, New_Name: string[12];
Txt: string;
Ch: char;
procedure Read_Text; {Считывание текста из файла}
begin
{$I-} {Директива компилятору на отключение стандартной проверки операций ввода-вывода}
Repeat
Write('Введите имя файла для считывания текста: ');
Readln(Name); Writeln;
Assign(Fl,Name);
Reset (Fl);
if IOresult<>0 then
begin
Writeln('Файл не найден...');
Close(Fl);
end;Writeln;
Until IOresult=0;
{$I+} {Директива компилятору на включение стандартной проверки операций ввода-вывода}
Writeln('Файл ',Name, ': ');Writeln;
while not Eof(Fl) do
begin
Readln(Fl, Txt);
Writeln(Txt);
end;
Close(Fl);Writeln;
Write('Файл считан, нажмите Enter...');Readln;
end; {конец процедуры Read_Text }
procedure App_Text; {Добавление текста в файл}
begin
Append(Fl); {Открыть файл для присоединения нового текста}
Writeln('Файл ',Name,' открыт для присоединения нового текста ');
Writeln('Вводите текст для записи(для окончания нажмите Enter):');
Writeln;
Repeat
Write (':>');
Readln(txt);
Writeln(fl,txt);
Until txt=' ';
Close(Fl);Writeln;
Writeln('Присоединение нового текста окончено, нажмите Enter...');
Readln;
end; {конец процедуры App_Text}
procedure Erase_File; {Удаление файла}
begin
Erase(Fl); {Удаление файла}
Writeln('Файл ',Name,' удален с диска, нажмите Enter...');
Readln;
end; {конец процедуры Erase_File}
procedure Rename_File; {Переименование файла}
begin
Write('Введите новое имя файла: ');
Readln (New_Name);
Rename(Fl,New_Name); {Переименование файла}
Writeln('Файл',Name,'переименован в ',New_Name,',нажмите Enter...');
Readln;
end; {конец процедуры Rename_File}
procedure Copy_File; {Копирование текстового файла}
begin
Write('Введите имя файла, в который копируется файл ', Name);
Readln(New_Name);
Reset(Fl);
Assign (Fl_New,New_Name);
Rewrite(Fl_New);
while not Eof(Fl) do
begin
Readln(Fl,Txt);
Writeln (Fl_New, Txt);
end;
Close (Fl);
Close (Fl_New);Writeln;
Write('Файл ',Name,' скопирован в ',New_Name,', нажмите Enter...');
Readln;
end; {конец процедуры Copy_File}
Begin {Начало основной программы}
Inp_Text;
App_Text;
Write('Удалить файл (D),переименовать(R),скопировать(С),Выход(Е) ');
Readln(Ch);
case Ch of
'D','d': Erase_File;
'R','r': Rename_File;
'С','с': Copy_File;
'E', 'e': Halt(1);
end;
end.