binary to string

78 views (last 30 days)
Aseel H
Aseel H on 20 Feb 2012
Edited: Stephen23 on 29 Apr 2015
if i want convert binary to text:as s = ('101011101011010101011010'); then i want convert eaceh 8bit to character when use function bin2str(s); give error: "can not convert more than 52 bit" it consider "s" one character but i want for examble: S = '101011101011010101011010'; [a,b] =size(s) a=1 b=24; I want convert s to 3characters as output is==>'abc'

Answers (2)

Andrei Bobrov
Andrei Bobrov on 20 Feb 2012
a = reshape(s-'0',[],3)'
out = sprintf('%d',(a*(2.^(size(a,2)-1:-1:0).'))')
OR
a = reshape(s,[],3)'
out = sprintf('%d',bin2dec(a)')

Image Analyst
Image Analyst on 20 Feb 2012
How about this:
S = '101011101011010101011010'
S = reshape(S, length(S)/8, 8)
decimalValues = bin2dec(S)
In the command window:
S =
101011101011010101011010
S =
10100100
01011011
11110110
decimalValues =
164
91
246
  2 Comments
user06
user06 on 29 Apr 2015
ok this is fine .. it is giving the decimal values. now what should i do to get string by these bits?
Stephen23
Stephen23 on 29 Apr 2015
Edited: Stephen23 on 29 Apr 2015
@Anamika jain: This will help you:

Sign in to comment.

Categories

Find more on Numeric Types in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!