답변 감사합니다.
파일을 열어서 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 이용
:
:
: 그럼..
: