[ vladab @ 10.10.2004. 19:17 ] @
Imam problem kada pokusam da elemente dvostruko ulancane liste pokusam da smestim u fajl. Evo koda:
Code:
tmp := pocetak;
  assignfile(pf,'c:\program files\cestitka\slideshow.out');
  rewrite(pf);
  while tmp <> nil do
    begin
          writeln(pf,tmp^.slika);
          writeln(pf,tmp^.sx);
          writeln(pf,tmp^.sy);
          writeln(pf,tmp^.sh);
          writeln(pf,tmp^.sw);
          writeln(pf,tmp^.text);
          writeln(pf,tmp^.tx);
          writeln(pf,tmp^.ty);
          writeln(pf,tmp^.th);
          writeln(pf,tmp^.tw);
          writeln(pf,tmp^.fcolor);
          writeln(pf,tmp^.fname);
          writeln(pf,tmp^.fsize);
          writeln(pf,tmp^.fstil);
          writeln(pf,tmp^.sleeping);
          tmp:=tmp^.sledeci;
    end;
  closefile(pf);

tmp-pok na listu
pf-textfile

Svi elementi su mi tipa string,s tim sto su neki nastali f-jom inttostr. Kada otvorim fajl, neki stringovi su ok, a ovi nastali ovom f-jom su prazni (tj. postoji samo znak za novi red). Kako to da resim?

Drugi problem je kako da kopiram npr pera.mp3 sa jednog na drugo mesto? Ako moze primer za to.
[ Mr.Van @ 10.10.2004. 22:11 ] @
Ma za kopiranje fajlova imas one komande readblock i writeblock.. ja sam to davno ceprkao s njima i radilo....

a imas primer u dephi-u evo navescu ti ga

var

FromF, ToF: file;
NumRead, NumWritten: Integer;
Buf: array[1..2048] of Char;
begin
if OpenDialog1.Execute then { Display Open dialog box }
begin
AssignFile(FromF, OpenDialog1.FileName);
Reset(FromF, 1); { Record size = 1 }
if SaveDialog1.Execute then { Display Save dialog box}
begin
AssignFile(ToF, SaveDialog1.FileName); { Open output file }

Rewrite(ToF, 1); { Record size = 1 }
Canvas.TextOut(10, 10, 'Copying ' + IntToStr(FileSize(FromF))
+ ' bytes...');
repeat
BlockRead(FromF, Buf, SizeOf(Buf), NumRead);
BlockWrite(ToF, Buf, NumRead, NumWritten);
until (NumRead = 0) or (NumWritten <> NumRead);
CloseFile(FromF);
CloseFile(ToF);
end;
end;
end;
[ morlic @ 10.10.2004. 22:57 ] @
Daj primer za taj IntToStr, kako ga koristis?
[ Slavisa @ 10.10.2004. 23:09 ] @
Code:

  CopyFile('pera.mp3', 'djoko.mp3', TRUE);

:)
[ Rapaic Rajko @ 11.10.2004. 07:54 ] @
Proveri da li si mozda negde prosledjivao nekoj funkciji tvoj tmp^ record bez VAR deklaracije. U tom slucaju si punio stringove KOPIJI record-a, umesto originalu.

Rajko
[ vladab @ 11.10.2004. 12:57 ] @
@morlic Primer:
Code:
cur^.sx:=inttostr(form1.edit1.text);

@Rapaic Rajko tmp nisam prosledjivao. To mi je lokalna promenljiva koja ide od pocetka do kraja liste:
Code:
tmp := pocetak;
gde mi je pocetak globalna promenljiva koja pokazuje na pocetak liste.
[ Slavisa @ 11.10.2004. 14:34 ] @
form1.edit1.text vraca tip String.IntToStr() konvertuje Integer u String, a ti vec imas string ! Mozda si htio da string konvertujes u integer tj. StrToInt() ?
Uostalom taj kod ce proizvesti gresku prilikom kompajliranja.
[ vladab @ 11.10.2004. 20:06 ] @
Citat:
Slavisa: form1.edit1.text vraca tip String.IntToStr() konvertuje Integer u String, a ti vec imas string ! Mozda si htio da string konvertujes u integer tj. StrToInt() ?
Uostalom taj kod ce proizvesti gresku prilikom kompajliranja.

Ok, pogresio sam. To sam pisao iz skole i iz glave, pa... Nego desilo mi se nesto veoma cudno: Ono sto sam testirao i nije htelo da radi, sada radi bez problema. Stvarno mi nije jasno kako, ali pokusao sam sinoc 5-6 puta i uvek mi je fajl bio poluprazan, a sada sam startovao isti program, bez ispravljanja koda i radi. Sada sebi zvucim smesno. Hvala na pomoci i izvinite na bespotrebnom cimanju, ali ja sam se petljao sa tim makar sat vremena sinoc i nisam mogao da resim problem.
[ Slavisa @ 11.10.2004. 20:30 ] @
Mozda imas gremline u racunaru :)