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
[50946] Re:Re:[질문]컴포넌트 사용하지 않고 엑셀 읽어오기
초보 [] 1750 읽음    2007-10-19 14:39
답변 감사합니다.
파일을 열어서 XlsBeginStream(Filename, 0); 후 header를 어떻게 읽어 와야 하는지
감이 잘 오지 않습니다.  Cell 정보를 10~12 byte 를 읽는 이유도 잘 모르겠습니다.
( 제가 저장한건 Column 2개, Record 갯수는 최대 50개 모두 실수로 각 Cell당 4 byte면 될거 같은데요.)

Data를 읽어오는 방법에 대한 자세한 설명이나 예제를 부탁해도 될까요?
감사합니다.




:   1.맨처음에 에 header인  bof 12Byte읽어오구요
:   2.그다음부터 데이타를 파일크기만큼 읽어옵니다.
:       데이타를 읽을때는
:       2.1 먼저 Cell정보를 10~12Byte읽어와서 데이타 종류와 , 데이타 길이를 확인하구요
:       2.2 데이타 길이만큼 읽어와서 int 나 double이나 string으로 변환합니다.



장성호 님이 쓰신 글 :
: 님께서 팁게시판에 이의태님께서 올린 방법을 이용하셨네요
: http://cbuilder.borlandforum.com/impboard/impboard.dll?action=read&db=bcb_tip&no=201
:
: 그 방법의 장점은
:    1. Excel이 없어도 데이타를 저장할수 있다는것입니다.
:
:
: 하지만 단점은?
:    1. 지원하는 Data형식이 String , int , float 세가지 뿐이라는것
:    2. Sheet가  2장 이상은 안된다는것
:    3. 그리고 무엇보다 Excel 프로그램에서 저장한 데이타는 같은 방식으로 읽을 수 없다는것 등이 있습니다.
:
:
: 하지만 위 방법으로 저장한  xls파일은 write할때 방식으로 read하면 되겠죠
:
: WORD CXlsBof[6] = {0x809, 8, 0, 0x10, 0, 0};
: WORD CXlsEof[2] = {0x0A, 0};
: WORD CXlsLabel[6] = {0x204, 0, 0, 0, 0, 0};
: WORD CXlsNumber[5] = {0x203, 14, 0, 0, 0};
: WORD CXlsRk[5] = {0x27E, 10, 0, 0, 0};
:
: [위방식으로 저장한 xls파일 읽기]
:
:   1.맨처음에 에 header인  bof 12Byte읽어오구요
:   2.그다음부터 데이타를 파일크기만큼 읽어옵니다.
:       데이타를 읽을때는
:       2.1 먼저 Cell정보를 10~12Byte읽어와서 데이타 종류와 , 데이타 길이를 확인하구요
:       2.2 데이타 길이만큼 읽어와서 int 나 double이나 string으로 변환합니다.
:   3. 2번과정을 file길이만큼 반복하다가
:       데이타 타입니 eof이면 끝내면 됩니다.
:
: 직접 코딩해 보시고 안되면.. 다시 질문올리세요
:
:
: -추신-
:
: 아래 링크에 excel파일 저장하는 몇가지 방법이 기술되어있습니다.
: 그중 1번은 님이 지금 하시는 방법이구요
: 1번 ,2번 ,4번 , 5번이 excel이 pc에 설치되어있지 않아도 저장및 읽어오는 기능이 됩니다.
: 문론 한계는 있습니다.
:
:
: http://cbuilder.borlandforum.com/impboard/impboard.dll?action=read&db=bcb_qna&no=50156
:
: [Excel 저장방법]
:
: 1. 직접 바이너리저장
: 2. XML 스프레드시트
: 3. OLE 이용
: 4. CSV 로 저장
: 5. 탭구분 TEXT파일로 저장
: 6. 엑셀 지원 StringGrid 이용
:
:
: 그럼..
:

+ -

관련 글 리스트
50940 [질문]컴포넌트 사용하지 않고 엑셀 읽어오기 초보 1760 2007/10/19
50945     Re:[질문]컴포넌트 사용하지 않고 엑셀 읽어오기 장성호 2380 2007/10/19
50946         Re:Re:[질문]컴포넌트 사용하지 않고 엑셀 읽어오기 초보 1750 2007/10/19
50948             Re:Re:Re:[질문]컴포넌트 사용하지 않고 엑셀 읽어오기 장성호 1958 2007/10/19
50950                 Re:Re:Re:Re:[질문]컴포넌트 사용하지 않고 엑셀 읽어오기 초보 1661 2007/10/19
50951                     Re:Re:Re:Re:Re:[질문]컴포넌트 사용하지 않고 엑셀 읽어오기 장성호 1631 2007/10/19
50953                         Re:Re:Re:Re:Re:Re:[질문]컴포넌트 사용하지 않고 엑셀 읽어오기 unitas 1419 2007/10/19
50954                             Re:Re:Re:Re:Re:Re:Re:[질문]컴포넌트 사용하지 않고 엑셀 읽어오기 장성호 1699 2007/10/19
50956                                 Re:Re:Re:Re:Re:Re:Re:Re:[감사]감사합니다. unitas 1340 2007/10/19
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.