[문제해석]
문제해석 1.
* excel 저장은 할수있는데.. StringGrid에 내용을 저장하는 방법을 모른다
문제해석2.
* excel 저장방법을 모른다.
StringGrid의 내용을 Excel로 저장하는것은
Excel저장 방법만 알면 문제 되지 않을것입니다.
[Excel 저장방법]
1. 직접 바이너리저장
2. XML 스프레드시트
3. OLE 이용
4. CSV 로 저장
5. 탭구분 TEXT파일로 저장
6. 엑셀 지원 StringGrid 이용
[방법 설명]
1. excel fileformat을 필요한 만큼 알고 직접 바이너리 파일을 만든다.
그런데 excel fileformat을 충분히 이해하기는 쉽지 않겟죠
간단한 예제가 여기 팁&트릭 게시판에 있음
http://cbuilder.borlandforum.com/impboard/impboard.dll?action=read&db=bcb_tip&no=201
예제로는 복잡한 파일형식은 안되나 , excel이 설치되어있지 않아도 가능합니다.
2. xml 스프레드시트 형식으로 저장
xml 포멧을 알아서 그냥 text파일로 저장하면됩니다.
excel이 pc에 설치되어있지 않아도 되는 장점과
빠른 속도를 자랑합니다.
단점은
아마 office2003이상에서만 해당 파일을 열수있을것이며
xml 포멧을 알아야 됩니다. ,
그리고 chart나 이미지 파일같은경우는 어려울겁니다.(정확히 모름)
xml포멧은 office2003에서 다른이름으로 저장하여 xml스프레드시트로 저장한후
그 파일을 notepad같은 text에디터에서 열어보십시요
3. ole를 이용한 방법
단점은 excel이 pc에 설치되어있어야 됩니다.
그리고 속도가 좀 느립니다.
장점은 excel 파일 포멧을 몰라도 된다는것..
ole를 이용하는 방법에도..
3.1 VARIANT 변수를 선언해서 직접 OLE 코딩
3.2 ole컴포넌트를 이용하는 방법이 있구요
관련해서는 여기 검색하면 많이 나와요
4. csv 로 저장하는 방식 (콤마로 구분해서 확장자 *.csv 로 저장)
장점 : excel파일포멧을 몰라도 되구
text파일로 그냥 저장하면 되니까 속도도 빠릅니다.
저장하기 위해 excel이 설치되어있지 않아도 됩니다.
단점 : 몇가지 형식은 저장이 되는데...
아주 복잡한 형식은 제한이 됩니다.
문론 image같은경우도 저장이 어려울것이구요
5. 탭 구분 xls 파일
( 탭으로 셀을 구분해서 text파일로 저장)
장점 : csv처럼 excel파일포멧을 몰라도 되구
text파일로 그냥 저장하면 되니까 속도도 빠르고 , 문론 저장하기 위해 excel이 설치되어있지 않아도 됩니다.
단점 : csv 보다 형식이 더욱 제한될겁니다.
6. Excel저장을 지원하는 StringGrid 이용
ole 컴포넌트 말고 StringGrid중에 excel저장을 지원하는 grid가 있습니다. 그것이용하는것도 괜찮아요
아마 이것도 excel저장을 지원하는 grid도 대부분
excel이 기본 설치되어있어야 될겁니다.
[결론]
; 의견입니다.
StringGrid의 data를 저장하기위해서는 데이타의 종류에 따라 다를것인데..
data가 text만 있다면 csv나 xls로 저장하시구요
또는 쪼금 노력해서 xml 스프레드 시트를 이용하구
아주 복잡하고 문서인경우는
ole를 이용....
아니면 Excel저장을 지원하는 StringGrid 이용...
그럼...
pili 님이 쓰신 글 :
: 읽어주셔서 감사합니다.
: 다름이 아니라. 제목처럼 스트링 그리드의 내용을 엑셀파일로 저장하고자 하는데
:
: 잘 되지 않네요.. 아시는 분.. 답변좀 부탁 드리겠습니다.
:
: 그럼 즐거운 하루 보내세요.. ^^