读书人

关于压缩文件时不重命名源文件?解决方

发布时间: 2013-01-01 14:04:18 作者: rapoo

关于压缩文件时不重命名源文件?
本帖最后由 t101706 于 2012-12-18 16:22:55 编辑
根据以下代码发现压缩后会重命名源文件于压缩文件中,求教怎么不重命名?也就是压缩后,使用原来的名字放于压缩文件中?谢谢



WF_Error CZlib::Compress(const char * DestName,const char *SrcName)
{
FILE * fp_in = NULL;int len = 0;char buf[16384];

WF_Error re = WF_OK;

if( NULL == (fp_in = fopen(SrcName,"rb")))
{
return WF_FAIL;
}

/////////////////////////////////////////////
gzFile out = gzopen(DestName,"wb6f");

if(out == NULL)
{
return WF_FAIL;
}

for(;;)
{
len = fread(buf,1,sizeof(buf),fp_in);

if(ferror(fp_in))
{
re = WF_FAIL;
break;
}

if(len == 0) break;

if(gzwrite(out, buf, (unsigned)len) != len)
{
re = WF_FAIL;
}
}

gzclose(out);

fclose(fp_in);

return re;
}


[解决办法]
偶一直用类似system("rar.exe a pack *.dat");的方法压缩文件。

读书人网 >C++

热点推荐