matlab读取文件如何判定读取结束?

2016-07-14 14:12 阅读 403 次 评论 0 条

在日志matlab中uigetfile()设置默认路径,可以图形化的选择文件,并且读取文件,当时使用的方法是一次读取文件中的全部内容,已知文件长度,fread的时候指定读取长度,一次读完,然后再处理。对于一个不知道文件长度的文件,只知道数据中固定数据帧格式,需要依次读取的文件,如何判定文件是否结束呢?

通常想到的是

~feof(fd)

判定是否结束,这个函数可以判定结束,但对于按单个字符进行读取,就会出现“A(I)=B,A、B不是同一类型的错误”

image

有的同学会说,开始判定feof,当读完第一个“uint8”时,可能文件已经完了,这时读取就不对了。事实上改为,先判定再读取,如下所示,仍然会出现上面的错误。

image

查找matlab的help,也没能够理解。

最后查看了一些matlab的例子,先判定一下读取结果是否为empty,再写入数组,这下可以正常运行了,如下图所示。

image

版权声明:本文著作权归原作者所有,欢迎分享本文,谢谢支持!
转载请注明:matlab读取文件如何判定读取结束? | 起点博客
分类:应用笔记 标签:

发表评论


表情