AssignFile(sFp, OpenDialog1.FileName);
Reset(sFp);
이런 상태에서
다시 다른 파일을 열였을 때
sFp로 지정한 파일이 이미 열려있으면 닫고 다시 열어야 하는데,
열려있는 파일인가 아닌가 알 수 없네요.
즉,
private
sFp : TextFile;
.....
procedure Form1.FormCreate(Sender: TObject);
begin
sFp := nil; // 파일이 열리지 않았음
end;
procedure.....
begin
if OpenDialog1.Execute then begin
if sFp <> nil then CloseFile(sFp); // 사용 중이던 파일은 닫아 준다.
AssignFile(sFp, OpenDialog1.FileName);
Reset(sFp);
end;
end;
그런데
sFp := nil;
여기서부텀 에러가 납니다.
그러니 if sFp <> nil then CloseFile(sFp); 이것도 에러가 납니다.
파일이 열려있는 지 알 수 있는 방법이 없나요?
고수님들의 조언을 부탁 드려 봅니다.
|