matlab二进制文件读取问题:
matlab二进制文件读取问题:数据:00000000 00000001
用matlab的fread(fid,1,'int16')读取后,
显示的结果是256(即00000001 00000000),
正确的结果应该是1(即00000000 00000001),这是怎么回事啊,难道还存在回事,难道还存在高低位问题。 用textread吧。。
回复 沙发 maigicku 的帖子
How?可以的話,說清楚些! 3Q 呃~~好像偶理解错了。。刚一开始认为LZ只是想单纯地读取数据的问题。。
认为用textread(' ','%d')读出来,可发现LZ的问题不是那么简单。。
回复 地板 maigicku 的帖子
ㄡ不要紧, 偶也时常理解错楼主的意思! 我又试了试,不过我按下面的程序得出来的结果是12336,并不是LZ所说的256,可能程序不一样,希望LZ能帖出来:y=fopen('T1.txt','r');
A=fread(y,1,'int16')
下面是偶个人的一些想法:
读取的文件是.txt,也就是文件中的第一位0是一个字符,而非二进制,占了8位,读取的时候每8位读一次,即读出来0所对应的就是48
如果LZ想得到1的结果,偶尝试着编了一下,不知是不是LZ所想要的:
y=textread('T1.txt','%q');
y1=y';
B=strcat(y1(1),y1(2));
C=str2num(char(B))
T1.TXT文件内容如下:
00000000 00000001
页:
[1]