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
[69308] 빌더에서 fwrite 사용 질문드립니다~ 완전 초짜에요 ㅠ
이호민 [pneuma] 1626 읽음    2013-04-04 11:35

</code>

void __fastcall TForm1::Button2Click(TObject *Sender)
{
    short dataSize = 300000;
    short btSize = 1024;


    AnsiString fileName = "E:\\SUVAData\\111(NORTH)_CH1.NSWD";     


    double buffer[] = {dataSize*btSize};


    FILE *Open;      

    if((Open = fopen(fileName.c_str(), "rb")) == NULL)
    ShowMessage("Can't not open file");

    else
    {
        if(fseek(Open, SEEK_SET, 0) == 0)
        {
            fread(buffer, sizeof(short), dataSize*btSize, Open);

            FILE *outTextFile = fopen("d:\\Header.txt", "ab");

            fwrite(buffer, 2, dataSize, outTextFile);


            fclose(outTextFile);
            fclose(Open);
        }
        else
        {
            ShowMessage("fseek function failed.");
        }


    }


    delete [] buffer;
}

소스는 이러합니다. 데이터 파일을 읽어와서 300KB 에 해당하는 데이터만 분할해서 저장하는 소스인데요. 파일 생성은 되지만 내용이 들어오질 않아요 ㅠ

약간씩 고쳐보면 내용이 글자가 깨져서 나오구요. 위에 소스대로하면 파일만 생성되고 안은 텅 비어있네요 -_-;;

어디가 잘못된건지 모르겠습니다ㅠ fwrite 말고 fprintf로 해야할까요? 사수께서 만든 소스로보면 fprintf 로 반복적으로 한 라인씩 읽어서 출력하게 하셨던데..

암 것도 모르는 초짜의 생각으론 한 꺼번에 읽어서 한 번에 쓰는게 빠르고 낫지 않을까...싶어서요.


그리고 한 가지 더 조언부탁드리자면 위에 파일을 읽어오는 부분에서, 사용자가 원하는 파일을 선택하게 하는 방법을 알고 싶습니다!!

+ -

관련 글 리스트
69308 빌더에서 fwrite 사용 질문드립니다~ 완전 초짜에요 ㅠ 이호민 1626 2013/04/04
69310     Re:빌더에서 fwrite 사용 질문드립니다~ 완전 초짜에요 ㅠ 라스코니 1933 2013/04/04
69315         Re:Re:빌더에서 fwrite 사용 질문드립니다~ 완전 초짜에요 ㅠ 이호민 1753 2013/04/05
69309     Re:빌더에서 fwrite 사용 질문드립니다~ 완전 초짜에요 ㅠ 아루스 1972 2013/04/04
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.