C#顺序读取文件流

有时需要在一个文件流中顺序的读取一段一段的数据,例如一帧一帧地读取图像,是非常有用的。

打开文件:

fStream = new System.IO.FileStream(fileName, FileMode.Open);

fileLen = fStream.Length;//文件的长度

curPos = 0;//记录文件指针当前的位置
frameSize = imWidth*imHeight*4;//每一段数据的大小(字节数)

pdata = new byte[frameSize];//用于存放数据的buffer

读取下一段数据:

if(curPos {
fStream.Read(pdata,0,frameSize);//读一帧数据
curPos+=frameSize;
fStream.Seek(curPos, SeekOrigin.Begin);//更新文件指针

//...
}
else
{
MessageBox.Show("已到文件尾!");
return;
}

稍加修改也可实现每次往前读一帧数据。


你可能感兴趣的:(C#顺序读取文件流)