wanra 发表于 2010-8-27 10:00

关于用fread读取大数据量的问题

我有一个300M左右的二进制数据,想用fread进行读取分析。有时想从数据的开头分析,有时想从数据的中间分析,于是想用
A = fread(fid, count, precision)读取。但是当count的数据量超过一定值时就会出现??? Error using ==> fread
Out of memory. Type HELP MEMORY for your options.
的报错。请问fread对数据量的大小有限制吗?我应该采取什么办法解决这个问题?谢谢

ChaChing 发表于 2010-8-31 00:32

试试只读不存, 或读一部分後马上处理!
若一定得同时存在数据, 那空间需求便需扩大, 具体搜索下, 个人也没用过!:@L

zhouyang664 发表于 2010-8-31 22:33

matlab不是提供一个函数指定指针位置的吗?读中间的时候,先把指针定位在中间,然后再用fread进行读取不行吗?

ChaChing 发表于 2010-9-1 00:36

LZ问的好像是数据量大小的问题, 并非ftell指针位置的问题!?:@)
而且fread亦有A = fread(fid, count, precision, skip)

wanra 发表于 2010-9-1 11:47

谢谢两位的指导。
对于skip掉前面不读的数据,可以用fseek等命令。但是对于要读的数据,有没有什么好办法呢?我试过将虚拟内存增大,但是效果并不明显。
页: [1]
查看完整版本: 关于用fread读取大数据量的问题