读写二进制文件,验证正确性

来源:互联网 发布:淘宝店铺客服名字修改 编辑:程序博客网 时间:2024/04/30 20:27

// txtTobin.cpp : 定义控制台应用程序的入口点。
//

#include "stdafx.h"


int _tmain(int argc, _TCHAR* argv[])
{
 FILE * fp;
 int j = 0;
 int nWrite, nRead;

 

 

//------------------读取二进制文件数据到pProb数组中
 float pProb[300*400];
 fp = fopen("result.txt","r");
 if (fp != NULL)
 {
 // fseek(fp,0L,SEEK_SET);

  for (j = 0; j < 300*400; j++)
  {
   fscanf(fp, "%f",&pProb[j]);
  }
 fclose(fp);
 }

 

 

//--------------------将pProb数据写入二进制文件fread.out

 FILE *fp1 ;
 if (fopen_s(&fp1,"fread.out", "wb") == 0)
 {
  //fseek(fp1,0L,SEEK_SET);
  nWrite = fwrite(pProb, sizeof(float), 300*400, fp1);
  printf("nWrite = %d/n", nWrite);
  fclose(fp1);
 }

 

 

//-------------------从二进制文件fread.out中读出数据,到pProb2中

 FILE * fp2;
 
 float * pProb2 = new float[300*400];
 if (fopen_s(&fp2,"fread.out","rb") == 0)
 {
 // fseek(fp2,0L,SEEK_SET);
  nRead = fread(pProb2, sizeof(float), 300*400, fp2);
  printf("nRead = %d/n", nRead);
  fclose(fp2);
 }

 

 

//-------------------将pProb2中数据写入txt文件,查看
 FILE *fp3 = fopen("hair.prob.txt", "w");
// fseek(fp3,0L,SEEK_SET);
 for (j = 0; j < 300 * 400; j++)
 {
  
  fprintf(fp3, "%f ", pProb2[j]);
  if ((j+1)%300 == 0)
  {
   fprintf(fp3, "/n");
  }
 }
 fclose(fp3);
 return 0;

 delete [] pProb2;
}

 

原创粉丝点击