各位高手,本人想把循环所求得的语音特征参数数据存放在一个文件中(每一帧语音数据处理一次,得到一个16维的语音特征数据(float型)),放在一个一维数组里,然后我想把这些数据放在一个文件里,怎么存储啊?我想用
CFile cfile;
float pbuf[16];for(int i=0;i<16;i++)
{
  ……
   cfile.Write( pbuf, sizeof(float) );
   pbuf++;
   
  ……}
但是不行,为什么呢?

解决方案 »

  1.   

    for(int i=0;i<16;i++)
    {
      ……
       cfile.Seek(-10,CFile::end);//查找一下前面的-10这个参数的含义
       cfile.Write( pbuf, sizeof(float) );
       pbuf++;
       
      ……}
      

  2.   

    你设一个断点在for语句这里撒
    看进入循环的时候,数据是否在pbuf里面
    如果在里面的话
      不用循环就cfile.write(pbuf,sizeof(float)*16)
      

  3.   

    为什么要循环呢?
    那样会降低程序的效率。
    频繁的文件操作会明显的降低处理速度不用循环就cfile.write(pbuf,sizeof(float)*16)