Just nu i M3-nätverket
Jump to content

Radera filer.


hacker

Recommended Posts

Hej, jag har skrivit ett program som visar olika grafkfiler på min hårddisk och nu vill jag ha en knapp som kan radera dom, men jag får inte till det. Är det något fel på min kod???

Erase, OpenDialog.Title, OpenDialog.FileName Example

 

procedure TForm1.Button1Click(Sender: TObject);

 

var

F: Textfile;

begin

OpenDialog1.Title := 'Delete File';

if OpenDialog1.Execute then begin

AssignFile(F, OpenDialog1.FileName);

try

Reset(F);

if MessageDlg('Erase ' + OpenDialog1.FileName + '?',

mtConfirmation, [mbYes, mbNo], 0) = mrYes then

begin

CloseFile(F);

Erase(F);

end;

except

on EInOutError do

 

MessageDlg('File I/O error.', mtError, [mbOk], 0);

end;

end;

end;

Link to comment
Share on other sites

Hej

Jag kan se ett fel i koden. Closefile(F) görs bara när du svarar Yes på om du vill radera filen. Annars lämnas filen öppen och kan lätt försvinna för dig samtidigt som andra program kan få svårt att använda den.

Jag förstår inte varför du ska ha med Reset och Closefile i koden men om du ska ha med det bör koden se ut så här:

begin

CloseFile(F);

Erase(F);

end else CloseFile(F);

 

Jag provkörde koden för övrigt och den fungerade för mig.

 

 

 

 

 

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.



×
×
  • Create New...