Помощь - Поиск - Пользователи - Календарь
Полная версия: запись,чтение с файла
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
Xrymz
есть 2 проги 1 записывает в файл 2-я читает
1 вроде пашет...


uses crt;
const
n = 7;
type

TRec = record
pyhkt,tip:string [31];
nomer:integer; {o4enka}
end;

TBase = array [1..n] of TRec; {6a3a dannix}

TFile = file of TBase; {Fail}

var
b:TBase;
F:TFile;
i,j : byte;

begin
clrscr;
assign(f,'TEST.txt');
rewrite(f); {otkriv fail dlja zapisi}
writeln('BBog 6a3bI gaHHbIX ');
for i := 1 to n do
with b[i] do begin
write('Ha3BaHue /7yHKTa Ha3Ha4eHu9| PeuCa : '); readln(pyhkt);
write('Homep PeuCa : '); readln(nomer);
write('Tu/7 CaMoJIeTa : '); readln(tip);
end;
writeln;
write(f, b); {3apis 6azzi v fail}
end.


а вот 2-я читать нехочет немогу понять почему
program AEROFLOT;

uses crt;
const
n = 7;
type

TRec = record
pyhkt,tip:string [31];
nomer:integer;
end;

TBase = array [1..n] of TRec; {6a3a dannix}

TFile = file of TBase; {Fail}

var
b:TBase;
F:TFile;
i,j : byte;

begin
clrscr;
assign(f,'TEST.txt');
reset(f); {otkrit fail dlja zapisi}
writeln('BBbIBog 6a3bI gaHHbIX ');
for i := 1 to n do
with b[i] do begin
writeln('/7yHkT : ',i);
writeln('Tu/7 : ',i);
writeln('Homep PeuCa : ',i);
writeln;
end;
writeln;
close(f);
readln;
end.
Renbo
почитай тут для начала что ли.

Для начала ты не правильно заносишь в файл свою инфу. У тебя туда только последняя запись заносится из 7.

А там где выводишь на экран - так там вообще нету вывода


for i := 1 to n do
writeln('/7yHkT : ',i);
writeln('Tu/7 : ',i);
writeln('Homep PeuCa : ',i);
writeln;




это вообще не имеет отношения к файлу. Если ты хотела эти поля вывести, то тебе сперва надо читать запись из файла а потом выводить её поля...
volvo
Цитата
У тебя туда только последняя запись заносится из 7.
Ты когда-нибудь начнешь внимательно читать предыдущие посты, или так и будешь в режиме Write-Only? mad.gif Где, спрашивается, ты увидел то, что я процитировал? Заполняется массив, и потом сразу ВЕСЬ пишется в файл... Это что, запрещено?

Xrymz, файл закрывать после записи в него не забывай... Иначе он может остаться пустым...
Гость
volvo файл запалняеться причем весь...а вот читаться нехочет

for i := 1 to n do
writeln('/7yHkT : ',pyhkt);
writeln('Tu/7 : ',tip);
writeln('Homep PeuCa : ',nomer);
writeln;


ой.. я не то скопировал.. тут идет

Xrymz
все уже сделал....

если кому надо то вот...
1-я запись в файл
program AEROFLOT;

uses crt;
const
n = 7;
type

TRec = record
pyhkt,tip:string [31]; {imja styd}
nomer:integer; {o4enka}
end;

TBase = array [1..n] of TRec; {6a3a dannix}

TFile = file of TBase; {Fail}

var
b:TBase;
F:TFile;
i,j : byte;

begin
clrscr;
assign(f,'TEST.txt');
rewrite(f); {otkriv fail dlja zapisi}
writeln('BBog 6a3bI gaHHbIX ');
for i := 1 to n do
with b[i] do begin
write('Ha3BaHue /7yHKTa Ha3Ha4eHu9| PeuCa : '); readln(pyhkt);
write('Homep PeuCa : '); readln(nomer);
write('Tu/7 CaMoJIeTa : '); readln(tip);
end;
writeln;
write(f, b); {3apis 6azzi v fail}
close(f);
end.


2-я чтение с файла
uses crt;
const
n = 5;
type

TRec = record
pyhkt,tip : string [31]; {imja styd}
nomer : integer; {o4enka}
end;

TBase = array [1..n] of TRec; {6a3a dannix}

TFile = file of TBase; {Fail}

procedure Print(var b : TBase; var f : TFile); {vvivod infi iz bazi}

var
i,j : byte;
tips:string;
begin
read(f, b); {4tenie iz faila}
write('BBeguTe Tu/7 CaMoJIeTa : ');
readln(tips);
for i := 1 to n do
with b[i] do begin
if tips=tip then begin
writeln('Ha3BaHuE /7yHKTa Ha3Ha4eHu9| PeuCa : ',pyhkt);
writeln('HoMeP PeuCa : ', nomer);
end;
end;
end;

var
base : TBase;
baseFile : TFile;

begin
clrscr;
assign(baseFile, 'TEST.txt');
reset(baseFile); {Otkrivaem fail glja 4tenija}
Print(base, baseFile); {Bbubog infi iz faila}
close(baseFile); {3akrit fail}
readln;
end.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.