資源簡介
利用第三方XUnZip實現封裝自己 解壓函數。這個不用第三方lib 或者dll
代碼片段和文件信息
#include?“stdafx.h“
#include?“MyUnZip.h“
std::vector?&?MyUnZipW?(CString?szPathAndFileName?CString?szUnZipPath)
{
static?std::vector?szFilePath;
#ifdef?_UNICODE
WCHAR?buffer[248];
if(szUnZipPath?!=?L““)
{
/*?如果文件路徑不存在?先創建存在?不做任何修改?*/
SHCreateDirectoryEx(NULL?szUnZipPath?NULL);
}
else
{
GetCurrentDirectory(248?(LPWSTR)&buffer);
szUnZipPath?=?buffer;
szUnZipPath?+=?L“\\Skin“;
SHCreateDirectoryEx(NULL?szUnZipPath?NULL);
}
HZIP?hz=OpenZip(?(void*)(LPTSTR)(LPCTSTR)szPathAndFileName?0?ZIP_FILENAME);
ZIPENTRYW?ze;?
GetZipItem(hz?-1?&ze);?
int?numitems=ze.index;
for?(int?zi=0;?zi {?
ZIPENTRYW?ze;?GetZipItem(hzzi&ze);?
UnzipItem(hz?zi?(void*)(LPTSTR)(LPCTSTR)(szUnZipPath+L“\\“+ze.name)?0ZIP_FILENAME);?????????
szFilePath.push_back(szUnZipPath+L“\\“+ze.name);
}
CloseZip(hz);
#endif
return?szFilePath;
}
std::vector?&?MyUnZipA?(CString?szPathAndFileName?CString?szUnZipPath)
{
static?std::vector?szFilePath;
#ifndef?_UNICODE
char?buffer[248];
if(szUnZipPath?!=?““)
{
/*?如果文件路徑不存在?先創建存在?不做任何修改?*/
SHCreateDirectoryEx(NULL?szUnZipPath?NULL);
}
else
{
GetCurrentDirectory(248?(LPSTR)&buffer);
szUnZipPath?=?buffer;
szUnZipPath?+=?“\\Skin“;
SHCreateDirectoryEx(NULL?szUnZipPath?NULL);
}
HZIP?hz=OpenZip(?(void*)(LPTSTR)(LPCTSTR)szPathAndFileName?0?ZIP_FILENAME);
ZIPENTRY?ze;?
GetZipItem(hz?-1?&ze);?
int?numitems=ze.index;
for?(int?zi=0;?zi {?
ZIPENTRY?ze;?GetZipItem(hzzi&ze);?
UnzipItem(hz?zi?(void*)(LPTSTR)(LPCTSTR)(szUnZipPath+“\\“+ze.name)?0ZIP_FILENAME);?????????
szFilePath.push_back(szUnZipPath+“\\“+ze.name);
}
CloseZip(hz);
#endif
return?szFilePath;
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????1859??2012-12-26?10:29??Zip解壓縮\MyUnZip.cpp
?????文件????????917??2012-12-26?10:18??Zip解壓縮\MyUnZip.h
?????文件?????149252??2012-12-26?09:40??Zip解壓縮\XUnzip.cpp
?????文件??????17074??2012-11-29?15:00??Zip解壓縮\XUnzip.h
?????目錄??????????0??2012-12-26?10:27??Zip解壓縮
-----------?---------??----------?-----??----
???????????????169102????????????????????5
- 上一篇:Google C++ st
yle Guide - 下一篇:藍橋杯題庫包括vip歷屆真題
評論
共有 條評論