1、此类代码实现bin文件读写,只需要更改文件路径为代码目录的路径即可实现运行。
2、注意存储数据时,需要将数据读写类型一致,若为写入数据,需要判断数据类型可以使用class(变量)实现查看。
3、若数据为其他类型文件(txt\mat),读写bin文件可能易出错,因为数据类型不知道。所以尽量直接从源头变量中生成文件。
4、解决方式:可直接读取(txt\mat)文件后,将变量重新获取类型然后转存为bin文件,可避免出错。
close all;
clear all;
clc;
filename = 'D:\work\test_d.bin';
%% 向bin文件写入100个数,初始化data
%% 写入date数据
data = zeros(1,100);
%data
for k = 1:98
data(1, k) = k;
end
data(1,99) = -100; %第99个数写入-100
data(1, 100) = -10;
%% 强制数据转换
s = int16(data);
fp = fopen(filename, 'wb');
%% 类型包括int16、float、double 读写的数据类型需要一致
%% class(date)查询数据类型
fwrite(fp, s, 'int16');
fclose(fp);
fp = fopen(filename, 'rb');
b = zeros(16,1);
b = fread(fp, [1 100],'int16');%表示1行100列的数据读取
fclose(fp);