关于读文件,然后将里面的数据转为图片显示的有关问题

关于读文件,然后将里面的数据转为图片显示的问题
完全菜鸟,我这样写的,不行,求指导~~文件是raw类型~~
  capfile=fopen(dataname,"r");
char k;
if(((k=fgetc(capfile))!=EOF))//EOF文件结束标志
{
for (size_t row = 0/*, getck = 0*/; row != matplay->rows; ++row)
{
uchar* matplayptr=(uchar*)(matplay->data.ptr + row * matplay->step);
for(size_t col = 0; col != matplay->cols; ++col)
{
 
fread(&matplayptr[col],sizeof( char ), 1, capfile );
}

}
  cvConvert(matplay, imgplay);
cvNamedWindow("show show show",CV_WINDOW_AUTOSIZE);
cvShowImage("show show show",imgplay);
}
else
{
cvDestroyWindow("show show show");
}

------解决方案--------------------
用CvvImage
if ((logfile=fopen(dataname,"ab+"))==NULL)
{
MessageBox("no data,please save first");


}

else
{

while(!feof(logfile))
{
for (size_t row = 0; row != matplay->rows; ++row)
{
uchar* matplayptr=(uchar*)(matplay->data.ptr + row * matplay->step);
for (size_t col = 0; col != matplay->cols; ++col)
{
/* matplayptr[col]=fgetc(logfile);*/

fread(&matplayptr[col],sizeof(char),1,logfile);

}

}

cvConvert(matplay,imgplay);
cimgplay.CopyOf(imgplay,imgplay->nChannels);
cimgplay.DrawToHDC(hDC,&rect);
}
fclose(logfile);

}