istream失败的原因
int iCount = 0;
const int SHAW_MAX_BUF=5242880;
char *pBuf = new char[SHAW_MAX_BUF];
if (VOS_PTR_NULL == pBuf)
{
return LOG_UTIL_IO_MALLOC_FAIL;
}
memset(pBuf , SHAW_MAX_BUF, 0);
ifstream isFile(szSrcPath);
ofstream osFile(szDstPath);
//
if (!isFile) //请问各位高手这里失败的原因通常有哪些?
{
delete []pBuf;
isFile.clear();
return -1;
}
if (!osFile)
{
delete []pBuf;
osFile.clear();
return -1;
}
while (isFile.read(pBuf,SHAW_MAX_BUF))
{
iCount = isFile.gcount();
osFile.write(pBuf,iCount);
}
iCount = isFile.gcount();
osFile.write(pBuf,iCount);
//关闭与输入输出文件流相关联的句柄
isFile.close();
osFile.close();
delete []pBuf;
return 0;