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
[27563] [질문] text file을 hexa로 표현해서 memo에 올리는 건데, 좀 빠르게 할 수 없나요?
돈데크만 [dontechman] 1113 읽음    2003-10-19 16:02
일단 질문이 두가지 인데요.
memo콤포넌트에 이진 파일을 hexa형태로 출력해주는 코드를 작성했습니다.
그런데 memo가 원래 그런건지, 스크롤링때문에 그런건지, 전체 파일을 뿌려주는데
시간이 꽤나 걸리네요. 아래코드에서 memo->Add만 빼도 읽는 시간은 극히 작던데요.
또한가지 질문은 파일크기가 몇백메가가 넘어가야하는데 이게 memo에서 감당이 되는건지도
궁금합니다. 아님 다른 콤포넌트를 써야하는지..
아래는 작성한 코드입니다.
내용을 뿌려주는 속도와, 많은 내용을 담아야하는 크기의 문제를 둘다 해결할 수
있는 방법이 없을까요?

   ifstream fin;
   fin.open(str_file_name.c_str(),ios_base::in|ios_base::binary);

   if(!fin.is_open())
      return false;

   AnsiString str_restore,str_temp;
   formMain->MemoSource->Clear();
   unsigned char str_buf[20];

   while(1)
   {
      str_restore="";

      fin.read((unsigned char*)str_buf,sizeof (unsigned char) * 16);

      if(fin.eof())
         break;

      for(int count1=0;count1<16;++count1)
      {
         str_temp.printf("%02x",str_buf[count1]);
         str_restore+=str_temp+" ";
      }
      formMain->MemoSource->Lines->Add(str_restore);

   }

+ -

관련 글 리스트
27563 [질문] text file을 hexa로 표현해서 memo에 올리는 건데, 좀 빠르게 할 수 없나요? 돈데크만 1113 2003/10/19
33710     Re:[질문] text file을 hexa로 표현해서 memo에 올리는 건데, 좀 빠르게 할 수 없나요? 돈데크만 902 2003/10/20
33709     Re:[질문] text file을 hexa로 표현해서 memo에 올리는 건데, 좀 빠르게 할 수 없나요? 손효철 1029 2003/10/20
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.