-2
C++에서 쉽게 압축 해제하는 방법 (dll을 사용하지 않고 ...)을 검색하는 동안 Zip Utils을 방문했습니다.Zip Utils가 메모리에서 메모리로 압축을 풉니 다
로컬 버퍼에 서버 (gzencode()
을 사용하여 압축 됨)에서 데이터를 다운로드했지만, 이제는 Zip Utils 또는 다른 것을 사용하여 압축을 풀고 싶습니다.
내가이 말을 수 있습니다 :
지금char zipped[100000];
char unzipped[100000];
나는 다른 하나의 버퍼에서 데이터를 압축 해제하고 싶습니다, 내가 어떻게 정확히 우편의 Utils를 사용하여 해당?
편집 : 직접 압축을 풀어 보았지만 제대로 작동하지 않습니다. 다음은 내가 시도한 방법의 한 예입니다.
HZIP hz = OpenZip(zipped, sizeof zipped, "");
char buf[1024]; ZRESULT zr = ZR_MORE; unsigned long totsize = 0;
while (zr == ZR_MORE)
{
ZIPENTRY ze; GetZipItem(hz, 0, &ze);
zr = UnzipItem(hz, 0, unzipped, sizeof unzipped);
unsigned long bufsize = 1024; if (zr == ZR_OK) bufsize = ze.unc_size - totsize;
totsize += bufsize;
}
CloseZip(hz);
제공하신 링크는 좋은 예입니다. –
나는이 예제를 사용해 보았지만, 불행히도 저에게는 효과가 없었습니다. 그게 내가 여기서 질문하는 이유야. – user3213103
도움을 받으려면 지금까지 수행 한 작업과 정확히 어떤 코드가 문제를 일으키는 지 정확하게 보여줘야합니다. –