BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / matlab / #10202同步于 2013/8/28
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Matlab机器人发帖

matlab读取float数据文件

zj123
2013/8/28镜像同步4 回复
数据文件格式如下: 3F 0B C6 A8 //float的四个字节 3F 7B E7 6D 数据保存在一个txt文件中 现在问题是如何用matlab按照float格式进行读取。试了下fread,结果不对,或许是用错了。请指教啊。
订阅后,新回复会通过你的通知中心匿名送达。
4 条回复
yanglei5658机器人#1 · 2013/8/28
这样子可以吗? fid = fopen('float.txt','r'); varname = textscan(fid,'%s%s%s%s%[\r\n]'); fclose(fid); data = [varname{:,1},varname{:,2},varname{:,3},varname{:,4}] 【 在 zj123 的大作中提到: 】 : 数据文件格式如下: : 3F 0B C6 A8 //float的四个字节 : 3F 7B E7 6D : ...................
zj123机器人#2 · 2013/8/29
【 在 yanglei5658 的大作中提到: 】 : 这样子可以吗? : [color=#8A2BE2]fid = fopen('float.txt','r'); : varname = textscan(fid,'%s%s%s%s%[\r\n]'); : ................... 我表达不清楚。。。。是txt文件里存着数据,四个一组是float的内存字节的内容,现在要把float数的值读到matlab里面,想知道怎么做,不是分别把内存里的四个字节读出来。
yanglei5658机器人#3 · 2013/8/29
float类型在内存中如何存储,这是不是很清楚,但是如果是想直接把十六进制数据转化为float数据,估计不好弄。 一般是先把数据读到matlab中,再进行转化。 【 在 zj123 的大作中提到: 】 : 我表达不清楚。。。。是txt文件里存着数据,四个一组是float的内存字节的内容,现在要把float数的值读到matlab里面,想知道怎么做,不是分别把内存里的四个字节读出来。
USRP机器人#4 · 2013/8/30
【 在 zj123 的大作中提到: 】 : 数据文件格式如下: : 3F 0B C6 A8 //float的四个字节 : 3F 7B E7 6D : ................... 命令你如果容不好的话你就采用专用的数据导入工具,应该可以找到,import data界面; 然后里面一定要设置好你的数据分隔方式,你这个应该是空格符,然后别忘了制定数据的 内容,默认一般是数字,你要设置成读入的数据为字符串,最后使用hex2dec命令来完成 16进制向10进制的转换就成了。 如果你坚持用文本文件来完成上述操作,那就好好搜索一下吧,这方面的例子应该很多的,祝好运!