将二进制文件读入2d数组matlab

时间:2011-11-08 16:10:39

标签: matlab file-io binary

我使用此代码片段将二进制文件读入数组

 fid=fopen('data.bin','rb') % opens the file for reading
 A = fread(fid, count, 'int16') % reads _count_ elements and stores them in A

但是它将文件读入一维数组。是否有直接的方法将二进制文件读入二维数组而不必编写循环来执行此操作?

2 个答案:

答案 0 :(得分:3)

我相信这就是你所需要的:

fid = fopen('data.bin','rb');
A = fread(fid, [rows columns], 'int16')

答案 1 :(得分:1)

您必须事先知道要读取的矩阵的行数/列数。这样,您可以将值读取为数组,然后将结果重新整形为预期大小:

A = reshape(A,[r c]);