数据截断问题
想把感兴趣的数据从一个很大的数据中提取出来。例如:有一个记录了两个小时的数据,但是我只对第二个小时的数据感兴趣,可是由于数据量太大,用fread读取时,只能取前25分钟的数据,这样无论如何也得不到感兴趣的数据。请问大侠们有没有什么方法,可以帮我提取出感兴趣的数据。谢谢啦! help fseek 这么大的数据是有点问题 谢谢帮助,已经学习了fseek的用法。还想问一个问题,就是fread(fid,size,precision)函数里的precision的用途。假如我有一段ASCII码数据,每8个bytes是一个数据,那么在使用fread函数时,precision应该是什么? 原帖由 wanra 于 2009-6-18 23:09 发表 http://www.chinavib.com/forum/images/common/back.gif...有一段ASCII码数据,每8个bytes是一个数据...
到底是ASCII還是binary資料? 兩者是有差異的! 請參考
fread - Read binary data from file
fscanf - Read formatted data from file
另外是8个bytes还是个8bits? 8bits有schar, uchar, int8, unit8, 视原始资料的内容而定
[ 本帖最后由 ChaChing 于 2009-6-19 08:08 编辑 ]
回复 5楼 ChaChing 的帖子
您好。我的数据具体是这样的。前6461个bytes是一些数据资料的描述信息,而这些信息有的是用ASCII码表示,有的是二进制表示。从6462开始才是真正的数据。每一个数据都是2个byte,应该是二进制数据。这样的话,还可以用fread函数吗?我是这样读的,是否正确?offset=fread(fid,6461,'uint8'); %前6461个字节是患者的信息,因此作6461个偏置
=fread(fid,20000,'ushort'); %读取偏置后的一部分数据
[ 本帖最后由 wanra 于 2009-6-19 11:14 编辑 ]
回复 6楼 wanra 的帖子
建议试试看!fseek(fid,6462,'bof');
=fread(fid,200,'ushort');
先读一段判断下资料的合理性! 谢谢ChaChing!!我在读取之后与原始数据比较了一下,应该是对的。再次感谢
页:
[1]