POCO::ZIP 压缩与解压缩文件夹


//! 压缩目录到某个目录下的ZIP文件
/*!
	\param desfile	目标文件,如D:\\test.zip
	\param srcdir	源目录(要压缩的文件夹路径),如D:\\test\\
*/
void CModeSectionMgr::zipDirectory(char * desfile, char * srcdir)
{
	Poco::Path srcdir_path(srcdir);
	srcdir_path.makeDirectory();	

	std::ofstream outstream(desfile, std::ios::binary);

	Poco::Zip::Compress compress(outstream, true);
	compress.addRecursive(srcdir_path, Poco::Zip::ZipCommon::CL_NORMAL);

	compress.close();
	outstream.close();	
}

//! 解压缩ZIP文件到某个目录
/*!
	\param desdir	目标目录(要解压到的文件夹路径),如D:\\test\\
	\param srcfile	源压缩文件,如D:\\test.zip
*/
void CModeSectionMgr::unZipDirectory(char * desdir, char * srcfile)
{
	std::ifstream instream(srcfile, std::ios::binary);

	Poco::Zip::Decompress decompress(instream, desdir); 
	decompress.decompressAllFiles();

	instream.close();
}


  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值