如何用CFile读取二进制文件?
int i,j,n;
CFile file;
j=0;n=0;
char filename[20];
strcpy(filename,LPCTSTR(m_filename));//??????????把CString 赋值给char数组?
//第一行多32数据必须单独处理
for(i=0;i<8224;i++)
{
TRY
{
//以只读模式打开文件
file.Open(filename,CFile::modeRead|CFile::typeBinary);///这里有问题吗?
ULONGLONG flength;
//获得文件的长度
flength=file.GetLength();
//读取数据到缓冲区
UINT nBytesRead=file.Read(&a[j][i],1);
if(i>=32) // ////////////多出32个数据
{
b[j][n]=a[j][i];
n++;
}
AfxMessageBox(a[j][i]);
}
CATCH_ALL(e)
{
file.Abort();//关闭文件
THROW_LAST();
}
END_CATCH_ALL
//file.close();
}
我用的是MFC,m_filename在对话框中获得("1.csd"),但运行是总是说找不到这个文件,不知道问题出现在哪里?请高手指教,谢谢!