2011-11-22 2 views
3

zlib을 사용하여 데이터를 압축하고 있지만 유효한 gzip 파일을 메모리에 만들어야합니다.메모리에 gpp 파일을 작성하여 cpp 예제를 찾고 있습니다.

어떻게 올바르게 수행 할 수 있습니까?

메모리에 파일이 있어야하지만 디스크에 쓰지 않고 파일을 어셈블하는 방법을 모르겠습니다.

나는 주변을 둘러 보았지만 아무런 노골적인 상처는 눈에 띄지 않았습니다.

나는 gz_header가 있음을 알고 있지만 오프셋이 파일의 어디에 있는지 또는 어떻게 처리되는지 잘 모르겠습니다. 명백하게 예고편도있을 수 있습니다.

+3

사이드 제안 : 당신은 많은 질문을했고 그들 중 아무 것도 받아 들여지지 않았습니다. 질문을 검토하고 실제로 원하는 답변을보고 답변을 수락하십시오. – Shahbaz

+0

죄송합니다. 나는 내가 할 수있는 것들을 표시했다. – cynistersix

답변

3

Boost.Iostream with Gzip filters을 사용하여 데이터를 압축 할 수 있습니다. 예제를 파일 스트림 대신 메모리 스트림을 사용하도록 조정할 수 있습니다.

+0

라이브러리 사용 방법을 잘 모르겠습니다. 내가 "핵심 구성 요소를 포함"hpp 파일을 시도하고 내 이상한 오류가 많이 내 파일을 만들고있어. 필자는 라이브러리를 구축하고 이러한 기능을 사용하기 위해 헤더를 헤더에 포함 할 필요가 없다고 생각합니다. – cynistersix

+0

이 오류가 나타납니다. 오류 : 'filtering_streambuf'가이 범위에서 선언되지 않았습니다. 나는 그들의 예제를 복사하고 내 메이크 파일을 통해 폴더를 포함하고있다. 내가 바꾸고있는 코드는 오래된 레거시 C++이기 때문에 재귀 적으로 포함 파일에 대한 하위 폴더를 검사 할 수 있는지 잘 모르겠습니다. – cynistersix

+1

네임 스페이스 사용 boost :: iostreams; //이 줄을 추가했습니다. 오류가 해결되었습니다. 이제 라이브러리 사용 방법을 알아 내려고. – cynistersix

관련 문제