资源简介
利用第三方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历届真题
相关资源
- C语言程序设计教材习题参考答案.do
- 转发报警
- c++ 旋转的圆柱
- sift算法的C源码(网上唯一原创版本不
- 心电信号检测算法.rar
- booktool(x86汇编语言-从实模式到保护
- C++实战源码-AVI文件压缩工具
- C++实战源码-利用Direct Show进行视频捕
- C++实战源码-PSD文件向其他格式转换
- C++实战源码-幸运转盘
- C++实战源码-黑白棋
- C++实战源码-将Wave转换为MP3
- C++实战源码-网络五子棋
- C++实战源码-PSD文件浏览
- C++实战源码-利用Direct Show进行音频捕
- C++实战源码-批量添加水印
- C++实战源码-调用Office助手
- C++实战源码-将PNG转换为位图
- C++ 换肤程序
- C++ 关闭和打开显示器
- C++ 关闭输入法
- C++ 模拟鼠标单击按钮
- C++ 写入注册表项
- C++ 打开注册表根项
- C++ 快速设置注册表键值字符串数据
- C++ 隐藏桌面文件
- C++ 查询注册表键值信息
- C++ 隐藏“开始”菜单中“设置”里的
- C++ 应用程序自动登录信息
- C++ 隐藏“我的文档”图标
评论
共有 条评论