Pomocy Plis !Q!!

0

mam do was wielka prosbe
PIsze sobie programik i za wszelkie skarby nie wiem jak sie uporac z procedurka
a mianowicie moj problem wyglada nastepujaco:
w pliku mam zapisane dane w takim formacie

Adam Mickiewicz/Dziady cz. III/1989/300
Maraia KOnopnicka/Drzeweoo/1959/25

odczytac to z pliku umiem ale nie wiem jak poodzielac Autora ksiazki
tytulu i roku do labelów

plis
plis
plis
o pomoc mecze sie z tym kolejny dzien
slyszalem cos o copy(string,0,0),pos ale jak to doklaniew praktyce zastosowac to nie wiem

j

0

Radził bym ci to zapisywać w rekordach np:
TRec = record
autor : string[255];
dzielo : string[255];
data : string[4];
ilosc : integer;
end;
Na tej stronie jest artykół o plikach typowanych, przeczytaj napweno pomoże:).--Pozdrowienia {hello}
Chodek ;)
Delphi 6

0

Zdecydowanie popieram Chodka. Bedzie Ci duzo wygodniej poslugiwac sie danymi, chociaz ograniczysz dlugosc pola. Zrob jednak tak:

TRec = packed record

A do czytania z Twojego zbioru proponuje:

uses StrUtils;

procedure TForm1.Button1Click(Sender: TObject);
var
F: textfile;
s: array[1..4] of string;
tmp : string;
p , i: integer;
begin
AssignFile(F,'c:\windows\desktop\test.txt');
Reset(F);
while not eof(F) do
begin
readln(F,tmp);
for i:=1 to 4 do
begin
p:=pos('/',tmp);
if p=0 then
s[i]:=tmp
else
begin
s[i]:=leftstr(tmp, Pred(p));
tmp:=rightstr(tmp, Length(tmp)-p);
end;
end;
for i:=1 to 4 do
Memo1.Lines.Add(s[i]);
Memo1.Lines.Add('');

end;
CloseFile(F);
end;

ta procedura rozdziela na autora tytul itd i wrzuca do memo. Sam przerob na labele, mis ie nie chcialo.
--Pawel

Delphi6

0

Thanks
chlopcy jednak moglem na was polegac
proponujecie w rekordach
wiem ze latwiej ale nie moge bo ja sie podczepilem do bazy ksiazkowej innego programu
no ale ogromne dzieki za pomoc
pzodrwaiwam
:-) :-) :-) :-) :-) :-) :-) :-) :-)

0

To jeszcze jedna uwaga ogolna do uzywania rekordow w plikack. Oprocz stosowania packed nalezy unikac definiowania pol Integer i Cardinal. Zamiast nich trzeba uzywac LongInt i LongWord, bo rozmiar Integer i Cardinal moze byc zmieniony w przyszlych wersjach Delphi.--Pawel

Delphi6

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0