In my program I have an openfiledialogue and a savefiledialogue. Whenever I press cancel in these dialogue I get an I/O error 6. How do I remove this error?
procedure TForm1.Open1Click(Sender: TObject);
var
s: string;
// Declares a file type for storing lines of text
t: TextFile;
begin
mmo1.Lines.Clear;
// Set up the starting directory to be the current one
dlgOpen1.InitialDir := 'Libraries\Documents';
// Opens the file Dialogue
dlgOpen1.Execute;
// Assigns contents of the chosen
AssignFile(t, dlgOpen1.FileName);
// Opens a file given by FileHandle for read, write or read and write access
// Must use AssignFile to assign a file to the FileHandle before using Reset
Reset(t);
// The While keyword starts a control loop that is executed as long as the
// - Expression is satisfied (returns True)
// The Eof function returns true if the file given by FileHandle is at the end
// All this essentialy adds the contents of the text file, line by line until
// - there is no more text to be added
while not Eof(t) do
begin
// Reads a complete line of data from a text file
Readln(t, s);
mmo1.Lines.Add(s);
end;
CloseFile(t);
end;
You have to check the return value of dlgOpen1.Execute
:
if not dlgOpen1.Execute then
Exit;