读取一行二进制文件 MATLAB
Reading a line of binary file MATLAB
我是 MATLAB
的新手,我想做一件简单的事情:我想读取一个包含这样行的二进制文件
32156432
345243867
454154351
35477
5641871
....
我知道 MATLAB 中的 fread()
是逐字节读取文件,但我想读取每一行的值。所有值都是 uint32_t
并且文件是使用 C++
中的脚本生成的,只有 printf
,这些值打印在文件中,例如 my_file.bin
以这种方式启动可执行文件./executable param1 >> my_file.bin
您可以使用函数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);
我是 MATLAB
的新手,我想做一件简单的事情:我想读取一个包含这样行的二进制文件
32156432
345243867
454154351
35477
5641871
....
我知道 MATLAB 中的 fread()
是逐字节读取文件,但我想读取每一行的值。所有值都是 uint32_t
并且文件是使用 C++
中的脚本生成的,只有 printf
,这些值打印在文件中,例如 my_file.bin
以这种方式启动可执行文件./executable param1 >> my_file.bin
您可以使用函数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);