Q&A

  • 화일 저장할때 문제가 있어서 ^^;;
procedure TfrmMain.Save1Click(Sender: TObject);
begin
  tmpContents := txtEdit.Text;
  if dagOpen.FileName <> '' then
  begin
    AssignFile(F,dagOpen.FileName);
    reWrite(F);
    Write(F,txtEdit.text);
  end
  else
  begin
    dagSave.Filter := 'Text files (*.txt)|*.txt';
    if dagSave.Execute then
    begin
      AssignFile(F,dagSave.FileName);
      reWrite(F);
      Write(F,txtEdit.text);
      frmMain.Caption := dagSave.FileName;
      StrTmp:=dagSave.FileName;
      FilePath:=ExtractFilePath(StrTmp);
      FileName:=ExtractFileName(StrTmp);
    end;
  end;

  CloseFile(F);

end;

위의 소스는 저장메뉴를 눌렀을때의 소스입니다.
문제점은 어떤 화일을 열어서 수정하고 저장하는것은 잘 돌아갑니다만
실행시키고 아무것도 없는 상태에서 저장을 하면 화일이 안만들어지네요 ㅠ.ㅠ
폼 생성시 모든 변수들 초기화 다 해줬구요 dagSave,dagOpen의 FileName도
초기화( '' ) 해줬습니다. 제가 있는 책에는 화일에 대한내용이 나와있지 않고
도움말을 봐도 제대로 알수 가 없어서 이렇게 부탁드립니다...
무슨문제 일까요...
1  COMMENTS
  • Profile
    major 2003.09.16 20:43

    아래와 같이 해 주시면 파일이 생길것 같네요..
    //파일이 없으면 그러니까 이왕이면 FileExists라는 API를 사용해서 if 로
    //없으면 Append 존재하면 Write만 하시면 될 것 같네요..
      Append(dagSave.FileName);
      Writeln(dagSave.FileName, txtEdit.text);

    그럼 즐프하세염...