如何从比特流中恢复数据

时间:2014-07-11 11:05:02

标签: string matlab binary

我有一个包含数据的txt文件:

123456789 abcef

现在我想读它并从比特流中恢复它。如何通过matlab实现。我尝试这样做但是从比特流中恢复数据,它不起作用 这是我的代码

fid=fopen('test.txt','r');
sStream=fread(fid,'*char')' % to stream

%% convert to bit stream 0-1
sPacket=dec2bin(sStream,8);

%% store in vector Example s=[10000 1000 11101110 ...]
sPacket =  str2num(reshape(sPacket',[],8))';

%% Let recovery it to 123456789 abcef
%% Problem in here
out=bin2dec(sPacket);

使用bin2dec时出错(第27行) 输入必须是一个字符串。

1 个答案:

答案 0 :(得分:1)

bin2dec接受字符串dataType作为参数

    dPacket = {}
    for idxsPacket = 1:size(sPacket,2)
      dPacket{idxsPacket} = char(bin2dec(num2str(sPacket(idxsPacket)))); 
    end

在此dPacket Stores Char值