请求,FILE *fp读unsigned short数据,如何不对啊
请求高手指点,FILE *fp读unsigned short数据,怎么不对啊?CString FileName11111fpfopen(FileName,w+
请求高手指点,FILE *fp读unsigned short数据,怎么不对啊?
CString FileName="11111";
fp=fopen(FileName,"w+t");
unsigned short data[123];
OnTimer//定时将数据输出到文件中
{
fwrite(data,sizeof(data_test),1,fp);
}
这样将数据输出到文件中,有什么不对吗?我这么将数据输出到文件中,经常出错,偶尔会多一两个字节,这是怎么回事啊?
但是如果用输入输出流,就一个字节都不差。
[解决办法]
我一般使用wb 说实话很少用t文本模式。
你试试
fp=fopen(FileName,"wb");
[解决办法]
有没有关闭文件,fwrite好像是带缓存的,如果没关闭文件就还没写进去。
[解决办法]
[解决办法]不要把
fopen("...","...");fscanf,fprintf,fclose //读时把\r\n替换成\n,写时把\n替换成\r\n;读到\x1a就设置EOF;读写的内容当字符看待
和
fopen("...","...b");fread,fwrite,fclose //不作以上替换,遇到\x1a仍继续读;读写的内容当字节看待
弄混了
[解决办法]建议fwrite和二进制文件联系起来,楼主还是使用fopen("","wb+");试试。