由于对matlab不熟,因此先用fortran计算了一列数据,再导入matlab(主要是为了与原系统的书写格式一致),但是用matlab读入二进制数据时,似乎没有问题,但是重新写入一个文件后,数据就发生了变化,希望高手能够指点迷津。

matlab的语句:
fid=fopen('wave.dat','r');
A=fread(fid);
fn=fopen('waveok.dat','w')
for i=1:222,
    Pos=A(i)
    fwrite(fn,Pos,'short');
end   

出错的示例:原'wave.dat'文件中前十个数据为:128 0 128 0 128 0 128 0 128 0......
运行期间,我检查Pos的数据,显示似乎是对的,但是写入'waveok.dat'文件后,数据变为:
128 0 0 0 128 0 0 0 128......
盼望高手能够帮我解决这一问题,谢谢!