本文代码可以将有符号或者无符号的数据,以任意格式存储到txt文件。
fwrite函数功能是将数据写入二进制文件;
fprintf函数的功能是将数据写入text文件;
clear all
clc
data = randi([-128 127],1,256);% 产生随机的有符号数据 2^8(-128~127)
% 需要将复数转换为正数
for i = 1:length(data)
if(data(i)<0)
data_hex(i) = 2^8 + data(i);% 根据自己需要转换的位宽修改
else
data_hex(i) = data(i);
end
end
%% 将有符号的十进制数写入txt文件
fid = fopen('C:\Users\Administrator\Desktop\test\data_dec.txt', 'w+');
if fid == -1
disp('fopen failed');
else
for i=1:length(data)
fprintf(fid,'%d\n',data(i));
end
end
fclose(fid);
%% 将有符号的十六进制数写入txt文件
fid = fopen('C:\Users\Administrator\Desktop\test\data_hex.txt', 'w+');
if fid == -1
disp('fopen failed');
else
for i=1:length(data_hex)
fprintf(fid,'%02x\n',data_hex(i));%根据实际存储数据位宽计算16进制数据位宽,8(02x),9(03x)
end
end
fclose(fid);