我想读取一个文件中某段byte,用Seek来定位。
TRY
{
CFile file(path, CFile::modeCreate | CFile::modeWrite );//打开文件
LONG lOffset = 5, lActual;
lActual = file.Seek( lOffset, CFile::begin );//从第5个byte读
char buffer[1000];
file.Read(buffer,1000);
}
CATCH( CFileException, e )
{
AfxMessageBox("打开文件出错!");
}
file.Read后跑到CATCH里去了
TRY
{
CFile file(path, CFile::modeCreate | CFile::modeWrite );//打开文件
LONG lOffset = 5, lActual;
lActual = file.Seek( lOffset, CFile::begin );//从第5个byte读
char buffer[1000];
file.Read(buffer,1000);
}
CATCH( CFileException, e )
{
AfxMessageBox("打开文件出错!");
}
file.Read后跑到CATCH里去了
可以逐行读文件
CStdioFile f;
CString temp;
if( !f.Open( FileName,CFile::modeRead) )
{
return false;
}
f.Seek( lOffset, CFile::begin );//从第5个byte读
f.ReadString(temp);
===================================
CFile::modeCreate | CFile::modeWrite 看着象创建文件呀?打开文件用 CFile::modeRead
CFile file(path, CFile::modeRead);
LONG lOffset = 5, lActual;
lActual = file.Seek( lOffset, CFile::begin );
char buffer[1000];
file.Read(buffer,1000);
现在的问题是buffer里怎么没内容?