2014-04-16 4 views
-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); 
+0

제공하신 링크는 좋은 예입니다. –

+0

나는이 예제를 사용해 보았지만, 불행히도 저에게는 효과가 없었습니다. 그게 내가 여기서 질문하는 이유야. – user3213103

+2

도움을 받으려면 지금까지 수행 한 작업과 정확히 어떤 코드가 문제를 일으키는 지 정확하게 보여줘야합니다. –

답변

0

나는 아직 내가 본 this page

가장 쉬운 코드에 제공된 소스를 사용하여 내 문제를 해결하는 데 성공했습니다, 그것은 완벽하게 작동합니다!

관련 문제