Меню сайта
Форма входа
Категории раздела
Учебник по Паскалю [13] Практика [23]
примеры программ
Главная » Статьи » Pascal » Практика

Процедуры и функции работы с файлами часть 2

procedure wr_txt_file(desttxt:string; i:integer; all_base:link);

var

f:text;

k:integer;

begin

clrscr;

if i=0 then

begin

writeln('Нечего записывать');

readln;

exit;

end;

assign(f,desttxt);

rewrite(f);

for k:=1 to i do

with all_base^[k] do begin

writeln(f,family);

writeln(f,name);

writeln(f,surname);

writeln(f,adr);

writeln(f,mark);

writeln(f,year);

writeln(f,color);

writeln(f,enige);

writeln(f,number);

end;

close(f);

writeln('Запись в ТХТ завершена');

readln;

end;

procedure read_txt_file(desttxt:string; var i:integer; all_base:link);

var

f:text;

k:integer;

begin

clrscr;

dispose(all_base);

new(all_base);

i:=0;

assign(f,desttxt);

{$I-}

reset(f);

{$I+}

k:=IOResult;

if k<>0 then

begin

writeln('Ошибка ',k,' при работе с файлом');

readln;

exit;

end;

if seekeof(f) then

begin

writeln('ТХТ файл пуст');

readln;

exit;

end;

while not eof(f) do

begin

inc(i);

with all_base^[i] do

begin

readln(f,family);

readln(f,name);

readln(f,surname);

readln(f,adr);

readln(f,mark);

readln(f,year);

readln(f,color);

readln(f,enige);

readln(f,number);

end;

end;

close(f);

writeln('Чтение из TXT файла выполнено');

readln;

end;

procedure read_dat_file(destdat:string; var i:integer; all_base:link);

var

f:file of rec;

k:integer;

stn:integer;

bl:boolean;

begin

clrscr;

dispose(all_base);

new(all_base);

i:=0;

assign(f,destdat);

{$I-}

reset(f);

{$I+}

k:=IOResult;

if k<>0 then

begin

writeln('Ошибка ',k, ' при работе с файлом');

readln;

exit;

end;

if eof(f) then

begin

i:=0;

writeln('DAT файл пустой');

readln;

exit;

end;

while not eof(f) do

begin

inc(i);

read(f,all_base^[i]);

end;

readln;

close(f);

writeln('Чтение из DAT файла выполнено');

readln;

end;



procedure main_menu(var i:integer; var k:boolean);

var

g:char;

begin

clrscr;

window(14,6,66,24);

writeln('Вы находитесь в главном меню БД ДПС v2.1 Записей: ',i);

writeln;

writeln('Выберете действие:');

writeln('┌───┬────────────────────────┐');

writeln('│ 1 │Ввод новых элементов │ ');

writeln('│ 2 │Вывод элементов на экран│');

writeln('│ 3 │Поиск в базе по ключу │');

writeln('│ 4 │Удаление элемента │');

writeln('│ 5 │Запись в ТХТ файл │');

writeln('│ 6 │Чтение из ТХТ │');

writeln('│ 7 │Запись в Typed файл │');

writeln('│ 8 │Чтение из Typed │');

writeln('│ 9 │Завершение работы │');

writeln('└───┴────────────────────────┘');

g:=readkey;

case g of

'1':inrec(card_in,card_out,i,k);

'2':outrec(card_out,i,k);

'3':search(card_out,i,k);

'4':delete(card_out,i,k);

'5':wr_txt_file(desttxt,i,all_base);

'6':read_txt_file(desttxt,i,all_base);

'7':wr_dat_file(destdat,i,all_base);

'8':read_dat_file(destdat,i,all_base);

'9':k:=true;

else writeln('Hеправильная команда');

end;

end;

begin

textcolor(15);

textbackground(1);

new(all_base);

k:=false;

i:=0;

main_menu(i,k);

while k=false do

main_menu(i,k);

dispose(all_base);


end.
Категория: Практика | Добавил: nazgull (07.03.2012)
Просмотров: 655 | Теги: исходники, нетипизированные файлы пример, код, файлы пример паскаль, запись в файл паскаль, примеры, записи паскаль, типизированные файлы пример | Рейтинг: 0.0/0
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Ссылки