Raw 暗场校准 I

 CFileFind tempFile;
  BOOL bIsFound;
  //查找文件夹中是否有*.Raw文件
  bIsFound = tempFile.FindFile(Dir + _T("\*.raw"));
  //如果有,则开始遍历
  while (bIsFound)
  {
    bIsFound = tempFile.FindNextFile();
    //如果找到的是返回上一层的目录
    if (tempFile.IsDots())
      continue;
    //如果找到的是文件夹,则递归遍历
    if (tempFile.IsDirectory())
    {
        tempFile.GetFilePath();
    }
    //否则读取raw
    else
    {
     CString tempfileName = tempFile.GetFilePath();
     unsigned short  * lpdata; 
     FILE * fp = fopen(tempfileName,"rb");
     if (fp!=NULL) 
     {
     fseek(fp,0L,SEEK_END);
     size_t filesize = ftell(fp);
     rewind(fp);
     lpdata = new unsigned short[filesize];

     fread(lpdata,1,filesize,fp);
     if (lpdata != NULL)
     {
       CFile logfile(_T("log.log"), CFile::modeWrite|CFile::modeCreate);
       CString str = "read file faild";
       logfile.Write(str,str.GetLength());
       logfile.Flush();
       logfile.Close();
     }
    delete [] lpdata;
     }
 }

 

posted @ 2016-02-25 16:20  風行  阅读(430)  评论(0编辑  收藏  举报