zlib 라이브러리

반응형

출처 : http://zkdhfl1010.tistory.com/24

zlib 라이브러리는 파일 및 데이터를 압축 및 압축 해제를 할 때 사용하는 공개형 라이브러리네요..
zlib 홈페이지는 : http://zlib.net
소스로 받을수도 있고 dll로 받을수도 있더군요. 최신 버전은 1.2.3 버전 인듯.

전 zlib의 소스를 받아서 이용하였는데..
파일 압축 및 해제를 이용하지 않고..
메모리 상의 데이터를 압축 및 해제를 해보았네요..


우선 소스를 이용하시려고 할 때에는 위와 같이 프로젝트를 만들어 사용하시면 됩니다..
위 프로젝트를 컴파일을 하시면 zlib.lib 파일이 추가되고..
zlib.h 파일과 zlib.lib 파일을 연동 시키시면 사용할 수 있습니다
위 프로젝트는 VS2005를 이용하여 만들었구요..
뭐 이상이 있는지 없는지는 확실하게 Test 해보지는 않았네요..

관심 있으신분들은 해보시고 문제 있으시면 덧글로 남겨주시길.. ^^

어째든 이렇게 되었으면 우선 연동은 완료 되었고..
압축을 하거나 압축을 풀때 사용 되는 함수는

compress와 uncompress 함수가 있네요..
(아까도 이야기 했지만.. 파일 압축이 아닌 메모리를 압축하고 해제하는 부분만 볼꼐요. ^^)

이런 함수가 있는데..

compress가 메모리 압축을 담당하고 uncompress 함수가 해제를 담당하네요.

compress로 압축한 것을 uncompress로 그대로 풀 경우 문제없이 잘 풀리지만..
이미 압축되어진 것을 uncompress로 풀 경우 메모리의 부분만 해제를 할 경우
일부 구간이 포함되지 않을 경우 정상적으로 풀리지 않더군요..
압축 알고리즘을 정확하게는 모르지만 구간구간 표시하는 거 같더군요..
(이부분은 순전히 감으로 말하는것임. ;;; 아시는 분으 쉽게 좀 가르쳐주세요.. ㄷㄷ)
(단 리턴값은 정확하게 뭔지 모르겠네요.. 실제 나와 있는 정보와는 좀 틀린듯.. )
(리턴값이 오류코드를 리턴하지만, 데이터가 들어있는 경우도 있더군요.. 물론 없을 때도 있구요.. )

어째든 이렇게 해서 zlib 라이브러리 사용기를 마칩니다.. 쩝..

혼자서 이것 저것 해본다고 시간만 많이 잡아 먹었는데.. 후미..
국내는 참 자료가 빈약해서.. 해석 해 놓은 것 뿐이 없더군요..
자세한 자료 있으신 분들은 좀 추천 좀 해주세요. ㅋㅋ

TAGS.

Comments