我是使用MATLAB
的新手,我想做一件简单的事情:我想读一个包含这样的行的二进制文件
32156432
345243867
454154351
35477
5641871
....
我知道MATLAB中的fread()
逐字节读取文件,但我想读取每行上的值。所有值均为uint32_t
,文件是使用C++
中的脚本生成的,只有printf
,这些值打印在my_file.bin
这样的文件中,以这种方式启动可执行文件./executable param1 >> my_file.bin
答案 0 :(得分:2)
您可以使用fscanf
示例代码:
fileID = fopen('my_file.bin','w');
x = 32156432;
y = 345243867;
w = 454154351;
fprintf(fileID, '%d\n',x);
fprintf(fileID, '%d\n',y);
fprintf(fileID, '%d\n',w);
fclose(fileID);
fileID = fopen('my_file.bin','r');
formatSpec = '%d';
A = fscanf(fileID, formatSpec);