[求助数据写入错误,帮忙看一下,谢谢
编了一段采集数据后存储为.txt文件的代码,存储下来的float型数据只有前面一段是正确打开的,后面全部变成了乱码,打开文件发现隔一段好像丢了几个字节,我采集的正确的数最后一个字节基本都是40,抄写了一小段数据如下:00 6B 37 40 00 D3 29 4000 0D 0A 20 40 80 75 16,头两个字节是正确的,第三个字节开始错误了。
代码如下:
FILE *Pfile;
Pfile=fopen("F:\\record.txt","r");
if( Pfile == NULL )
{
//没有创建文件,则创建文件
Pfile=fopen("F:\\record.txt","w");
//写入数据
//fwrite(Y_Gwave,4,1000,Pfile);
fwrite(Voltage,sizeof(float),60000,Pfile); //Voltage写入60路数据
fclose(Pfile);
}
else
{
//表示创建了,则关闭后,在用追加方式写入
fclose(Pfile);
Pfile=fopen("F:\\record.txt","a+");
//写入数据
// fwrite(Y_Gwave,4,1000,Pfile);
fwrite(Voltage,sizeof(float),60000,Pfile);
fclose(Pfile);
}
哪位帮忙看一下有什么问题,万分感谢阿。
再 顶一下 自己
帮帮忙吧 ,大家伙儿 :handshake 本帖最后由 Rainyboy 于 2010-10-1 13:59 编辑也不是所有的float都是以40H结尾的吧?
我用你那部分代码输出了{1,2,3,4,5,6,7,8,9,0},发现内存中的数据和文件中的数据是一致的啊,也许并不是这部分代码的问题吧?
格式化成字符串,再存储
页:
[1]