C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[19036] FileClose()로 파일을 닫고 다시 여세요.
김백일 [cedar] 1220 읽음    2002-05-31 14:45
아래 글에 만해님께서 더 간단한 방법을 쓰셨고요,
저는 님의 소스가 무엇이 잘못되었는지를 보여드리죠.

현정환 님이 쓰신 글 :
: if(!FileExists("menu.tmp"))
: {
:     FileCreate("menu.tmp");
      // FileCreate는 파일을 새로 만들고 열어둡니다.
      // 즉 새로 만들고 열어둔 파일 핸들을 리턴합니다.
      // 당연히 그 파일을 닫고 다시 열어야 합니다.
      FileClose(FileCreate("menu.tmp"));
: }
:
: TFileStream *File = new TFileStream("c:\\menu.tmp", fmOpenWrite);
:
: =====================
:
: 처음에 이렇게 썼는데 TFileStream 의 생성자에서 계속 익셉션이 떠서 (이미 만들어져
: 있을때는 에러가 안 뜹니다.) 혹시 File 생성하자 마자 열어서 그런가 싶어서 중간에
: Sleep 을 넣어봤는데 그대로더군요..
: 그래서 아예 FileCreate 를 프로그램이 Init 됐을 때의 소스로 옮겨서 멀찍히 떨어뜨려
: 놨는데 (시간 차이는 무쟈게 길게요..) 그래도 TFileStream 에서 에러가 떴습니다..
: 왜 이미 File 이 있을땐 문제가 없는데 새로 생성을 하면 문제가 될까요..
: 혹시 FileCreate 한 다음에 무언가 메모리를 막아줘야 하는게 있나요..?
:
: 익셉션 에러 메세지는 "파일을 열수 없습니다.." 이런 내용입니다.
:
: 고맙습니다.. 꾸벅..
:

+ -

관련 글 리스트
19031 TFileStream 에서 저장할 때.. 현정환 1151 2002/05/31
19036     FileClose()로 파일을 닫고 다시 여세요. 김백일 1220 2002/05/31
19035     Re:TFileStream 에서 저장할 때.. 만해 1660 2002/05/31
19037         두분 다 , 고맙습니다. 많은 도움이 됐습니다.~ ^^;; 현정환 910 2002/05/31
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.