疑难杂症之 fwrite

2016-10-02  本文已影响0人  黄俊浩

今天写一测试函数:

intIoDumpFileTest(

char*pszFileName,

void*buf,

intnDataLen)

{

FILE*stream;

intnWritten;

intnLen;

void*nTempBuffer;

if((stream= fopen(pszFileName,"wb"))==NULL)

return -3;

nWritten=(int)fwrite(buf,1,nDataLen,stream);

fclose(stream);

if(nWritten!=nDataLen)

{

return(-1);

}

else

return(0);

}

看上去一切都好,但问题还是发生了:

IoDumpFileTest("D:\\LT001T1011170004_1000_TTPP_RAW.TDF", data.data, data.dataSize);//成功

IoDumpFileTest("T:\\LT001T1011170004_1000_TTPP_RAW.TDF", data.data, data.dataSize);//失败

注释:

1. T 盘为映射的网络硬盘

2. 文件大小为 147,397,620 bytes

3. 失败现象,文件成功导出,大小为 147,394,560 bytes, 内容为空(0x00 0x00.....)

问题已找到,暂时买个关子,有兴趣的可以探讨一下;

上一篇下一篇

猜你喜欢

热点阅读