举例说明。假设有一个txt文件如下,文件名是bin.txt。
0001
0101
0010
1001
Matlab处理思路:
首先打开txt文件,并把数据读到字符串变量中。使用的命令是fopen和fread。
然后,把二进制每个数据分隔开(这就要根据txt文件中不同的分隔方式处理,我给的例子是换行符,其他的也可能是空格,也可能是分号等),并且分别转换为十进制,用命令bin2dec。
编写一个M文件如下。注意要与bin.txt文件放在同一个目录下,执行即可。
fid = fopen('bin.txt', 'r');
c = fread(fid, '*char')';
n=4; %%这里设定二进制的位数
for i=1:floor(length(c)/(n+2))+1
decimalData(i)=bin2dec(c((i-1)*(n+2)+1:(i-1)*(n+2)+n));
end
decimalData
得到结果:
decimalData =
1 5 2 9
a=textread('c:\a.txt','%s')';%以字符形式打开文件
alpha=hex2dec(a)'; %16进制转化为10进制数,存入alpha矩阵
dlmwrite('c:\b.txt',alpha,'delimiter', ' ') %将得出数据存入新的b.txt文档
你可以参考一下啊。很容易的哈。