Convert string to bytes

32 views (last 30 days)
Bartosz Larzewski
Bartosz Larzewski on 17 Dec 2022
Answered: Walter Roberson on 18 Dec 2022
Hello,
How can I convert string variable like b'\xfd\xfd\xfd\xfd\xfd into row vector [253, 253, 253, 253,253]?
I would like to convert ping message from Ping Sonar made by BlueRobotics.
Greeting :)
  4 Comments
Bartosz Larzewski
Bartosz Larzewski on 17 Dec 2022
Moved: Stephen23 on 18 Dec 2022
Okay, there is a file with data
Bartosz Larzewski
Bartosz Larzewski on 17 Dec 2022
Moved: Stephen23 on 18 Dec 2022
b"\xdb\xfd\xfd\xfd\xfd\xfd\xfd\xfd\xfd\xfd\xfd\xfd\xfd\xfd\xfd\xfd\xfd\xfde'\x12\x07\x00\x00\x00\x01\x04\x07\x07\x05\x03\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x03\x04\x05\x04\x03\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x0f3y\xf3\xfd\xfd\xfd\xfd\xfd\xfd\xfd\xfd\xfd\xfd\xfd\xfd\x80<EHi\x91\xc2\xda\xe2\xef\xc8\x85\x12\x041w\xaa\xb0W2Cf}jOKRbqqb8\x1f\x08\x01\x00\x00\x03\x0b\x16\x18\x0b\x00\x03\x18;T[R9\x18\x03\x02\x11(;<)\x15\x08\x04\x03\x04\x02\x01\x01\x00\x01\x02\x02\x02\x00\x00\x00\x00\x01\x02\x04\x03\x00%\xfd\xfd\xfd\xfd\xfd\xfd\xff\xfd\xfd\xfd\xfd\xfd\xfd\xfd\xfd\xfd\xfd\xfd\xfd\xfd\xfd\xfd\xfd\xfd\xfd\xfb\xfd\xfd\xfd\xfd\xfd"
Here is example of one measurement. It should has 200 integers in it.

Sign in to comment.

Answers (2)

Baraa
Baraa on 17 Dec 2022
Edited: Baraa on 17 Dec 2022
To convert a string variable like b'\xfd\xfd\xfd\xfd\xfd' into a row vector of integers, you can use the typecast function in MATLAB. This function allows you to convert variables to a different data type, in this case to an array of unsigned 8-bit integers.
Here is an example of how you can use the typecast function to convert the string variable to a row vector:
% Define the string variable
string_variable = b'\xfd\xfd\xfd\xfd\xfd';
% Convert the string variable to an array of unsigned 8-bit integers
row_vector = typecast(string_variable, 'uint8');
% Print the result
disp(row_vector)
  1 Comment
Walter Roberson
Walter Roberson on 18 Dec 2022
Edited: Walter Roberson on 18 Dec 2022
MATLAB does not support b' syntax, and does not permit char or string() to be typecast()

Sign in to comment.


Walter Roberson
Walter Roberson on 18 Dec 2022
filename = 'płaska_2m_#2profile.txt'; %careful, that is not an L
S = readlines(filename);
%first convert escaped ' and " to their hex equivalents
%then strip off b"..." and b'...' to just the content
normalized = regexprep(S, {char("\\'"), '\\"', '^b"([^"]+)"', char("^b'([^']+)'")}, {'\\x27', '\\22', '$1', '$1'}, 'lineanchors');
%now convert \x.. to the character equivalent
%do NOT just put the whole line through sprintf! The text contains things
%like \xfdC and sprintf will extend the hex as far as possible instead of
%just using two hex digits
unhexed = regexprep(normalized, '(\\x..)', '${sprintf($1)}');
as_bytes = arrayfun(@(str)0+char(str), unhexed, 'uniform', 0)
as_bytes = 101×1 cell array
{[ 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 67 21 7 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 1 1 1 2 4 6 7 92 116 92 116 92 110 92 110 92 110 92 116 8 7 7 6 6 5 5 5 4 4 3 2 2 0 0 0 3 6 6 5 1 1 88 253 253 253 253 253 253 149 60 109 91 60 39 18 32 45 47 37 25 19 72 217 253 253 253 213 98 34 19 32 55 87 113 138 151 140 100 72 64 80 100 101 84 55 31 18 21 29 39 48 51 42 27 18 15 14 20 31 34 26 23 29 42 56 65 63 50 40 28 21 92 114 4 0 1 7 11 8 4 1 0 0 0 0 0 0 0 0 2 4 6 92 114 22 22 216 253 253 255 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253]} {[ 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 85 30 92 110 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 4 7 8 8 8 5 2 0 0 0 0 0 0 0 0 1 0 0 1 5 11 15 14 92 116 4 3 3 3 3 4 4 3 2 0 0 0 11 138 253 253 253 253 253 253 89 63 169 158 121 86 38 36 45 54 47 30 6 61 246 253 253 253 253 131 43 21 37 64 93 113 127 127 110 67 38 25 34 53 64 67 58 35 15 11 21 39 57 64 54 34 22 16 12 15 24 25 16 92 114 22 41 61 75 68 47 32 27 28 22 92 110 0 0 6 92 114 18 16 11 5 1 0 0 0 0 1 4 7 8 92 110 17 22 5 174 253 253 255 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253]} {[ 203 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 64 15 6 3 1 2 2 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 1 2 2 1 1 3 32 103 228 253 253 253 152 40 21 40 36 28 21 14 15 15 14 92 116 3 0 14 54 91 95 80 51 22 7 2 2 3 5 6 8 92 116 7 4 6 15 30 42 45 34 19 7 5 8 92 110 12 92 114 11 7 3 2 2 3 4 7 7 5 4 4 6 92 110 92 114 14 11 8 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 64 253 253 255 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253]} {[ 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 127 37 16 8 3 1 0 0 0 0 0 0 0 2 2 2 2 0 0 0 0 0 1 2 2 4 5 7 8 8 7 4 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 3 5 51 185 253 253 253 253 253 77 14 39 38 29 19 8 92 114 23 33 33 24 5 8 53 112 136 126 88 43 16 6 8 14 24 32 40 43 43 38 39 52 75 90 83 57 27 92 110 92 116 17 21 22 21 16 92 116 4 2 2 3 7 92 114 16 14 14 17 25 35 43 43 35 27 16 8 3 1 5 92 116 11 92 116 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 105 253 253 255 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253]} {[ 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 87 15 0 1 4 2 0 0 1 4 8 92 110 92 110 8 7 6 5 4 4 3 5 6 4 2 0 0 0 0 0 0 0 0 1 3 7 11 15 18 21 21 15 8 2 0 0 0 0 0 0 0 0 0 0 0 0 7 173 253 253 253 253 253 253 187 98 216 184 120 67 12 20 44 64 58 34 2 60 253 253 253 253 253 214 92 92 42 46 64 93 113 133 140 134 106 98 117 162 198 183 138 81 50 44 44 49 56 63 61 53 36 28 22 19 23 36 43 44 54 81 113 142 154 143 115 85 52 27 92 116 3 11 22 27 21 14 92 114 92 114 12 8 3 0 1 2 4 7 12 12 92 110 8 11 27 253 253 253 255 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253]} {[ 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 140 43 27 14 3 0 0 0 1 2 2 1 1 0 0 0 0 0 0 0 2 3 4 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 6 92 116 11 92 116 8 7 7 6 4 2 0 0 0 0 6 82 253 253 253 253 253 253 164 98 141 141 116 93 39 15 11 16 17 7 3 56 192 253 253 253 222 105 28 8 15 28 40 45 46 45 38 28 28 47 85 113 115 85 45 14 4 92 116 15 20 23 20 92 114 3 0 1 4 11 17 19 18 20 24 31 43 53 53 44 33 21 11 6 5 8 11 92 110 6 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 157 253 253 255 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253]} {[ 205 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 77 26 92 114 6 1 0 0 0 0 0 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 0 0 1 1 2 3 3 3 2 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 22 91 220 253 253 253 168 55 40 63 60 45 31 11 7 92 116 12 11 6 0 92 114 54 97 106 91 60 26 6 0 0 0 0 1 1 2 3 3 5 14 27 35 34 23 11 5 4 3 3 3 4 4 1 0 0 0 1 3 5 5 3 3 3 4 7 12 15 15 15 92 114 11 7 5 2 0 0 0 0 0 1 2 1 0 0 0 0 0 0 0 0 0 0 0 1 54 253 253 255 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253]} {[253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 135 44 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 4 6 7 8 92 110 12 14 23 28 31 26 20 17 14 92 114 12 92 114 16 18 25 34 40 38 32 25 18 8 1 0 3 5 4 4 2 2 0 18 253 253 253 253 253 253 253 253 129 253 253 253 164 46 52 93 111 90 41 31 253 253 253 253 253 253 253 134 26 41 123 253 253 253 253 253 253 253 253 253 253 253 253 202 122 115 106 97 101 116 119 88 49 29 20 18 31 63 87 73 71 107 171 248 253 253 247 183 119 78 41 92 110 2 92 114 22 19 92 116 3 2 4 6 4 0 0 2 7 92 114 22 23 23 36 55 40 253 253 253 255 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253]} {[ 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 92 92 24 4 0 0 0 0 0 0 0 0 1 3 5 6 5 3 1 0 1 4 8 11 92 114 14 12 92 116 5 1 0 0 0 0 0 0 2 3 5 92 116 92 114 14 12 92 110 6 2 0 0 0 0 0 0 0 0 0 0 4 101 253 253 253 253 253 253 128 33 110 104 74 40 12 35 63 65 47 17 5 80 253 253 253 253 252 116 39 22 35 61 90 105 116 120 115 97 95 116 158 184 175 137 81 48 33 27 29 37 42 41 31 19 19 21 26 37 51 55 47 37 38 46 59 70 67 55 43 29 15 4 1 92 110 20 27 25 17 12 92 116 5 2 0 0 0 1 2 4 4 5 7 14 23 92 114 189 253 253 255 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253]} {[ 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 160 87 44 17 8 4 3 2 1 0 0 0 0 2 6 92 116 92 116 5 3 0 1 5 6 5 2 0 1 4 7 92 110 92 110 7 3 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 2 2 1 0 0 0 4 108 253 253 253 253 253 253 129 170 253 253 253 213 99 61 58 66 56 31 12 105 253 253 253 253 253 127 29 6 6 12 19 26 34 42 43 37 42 73 122 161 167 135 85 43 18 11 92 114 16 20 21 14 6 4 2 2 6 12 11 12 22 42 68 94 112 108 85 62 38 22 14 11 11 92 116 4 0 0 5 8 8 4 2 0 1 1 2 2 2 5 8 92 114 92 114 0 238 253 253 255 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253]} {[ 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 125 85 50 22 16 12 92 116 4 1 0 3 5 6 6 6 4 2 0 0 0 2 3 4 3 1 1 2 5 6 4 1 0 0 1 3 4 4 3 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 78 253 253 253 253 253 253 159 89 138 128 98 74 30 34 56 76 72 43 8 53 212 253 253 253 212 91 20 2 4 12 21 26 29 26 19 7 4 24 78 131 158 128 73 25 11 14 19 18 18 14 92 116 3 0 0 0 3 14 21 23 28 31 35 37 40 37 35 33 30 28 20 92 114 8 7 6 3 2 3 6 5 2 0 0 0 0 0 0 0 0 2 6 92 116 5 184 253 253 255 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253]} {[ 241 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 137 52 23 92 116 2 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 0 0 0 0 0 0 0 0 0 1 1 2 3 3 2 2 2 2 3 3 3 3 2 0 0 0 0 0 0 0 0 0 0 3 46 158 253 253 253 253 207 37 7 38 39 32 22 6 3 7 12 11 6 0 92 114 61 112 125 112 77 37 92 114 5 7 12 20 27 33 37 36 30 31 39 52 58 51 37 20 12 11 11 11 11 12 11 92 116 7 8 7 7 8 11 11 8 6 8 92 114 18 22 22 19 15 92 110 7 3 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 4 84 253 253 255 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253]} {[ 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 79 50 28 12 6 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 2 2 1 0 0 0 0 0 0 0 0 1 2 4 5 5 5 4 4 2 1 0 0 0 0 0 0 0 92 116 144 253 253 253 253 253 253 199 63 129 133 111 84 39 44 58 68 60 36 14 85 253 253 253 253 253 154 59 33 42 60 76 80 83 79 69 51 56 93 153 192 201 159 100 46 23 24 32 37 40 31 16 4 1 3 7 18 33 38 30 24 25 38 59 78 84 73 56 34 19 92 116 2 1 3 5 4 1 2 4 6 5 2 0 0 0 0 0 0 0 0 2 8 14 253 253 253 255 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253]} {[ 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 159 104 62 29 24 20 15 6 2 5 14 24 31 28 19 8 1 4 18 32 39 35 24 12 4 1 1 2 3 2 1 0 1 4 8 8 8 7 7 5 3 1 0 0 0 0 0 0 0 0 0 0 0 1 4 0 95 253 253 253 253 253 253 253 128 222 233 203 181 117 120 114 103 76 52 72 253 253 253 253 253 253 253 70 92 110 1 7 30 56 95 132 147 153 187 253 253 253 253 253 195 118 76 59 53 53 52 40 22 7 92 110 17 33 59 80 70 40 29 31 54 84 104 100 74 51 21 6 5 14 31 41 40 29 92 110 1 0 2 3 4 4 5 3 1 0 0 0 0 1 8 23 253 253 253 255 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253]} {[ 223 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 105 38 18 7 3 3 3 3 2 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 2 3 4 4 2 1 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 1 2 3 3 3 5 35 118 253 253 253 253 169 38 21 56 61 55 43 17 4 2 6 7 4 1 17 67 119 131 114 75 32 8 0 0 1 4 7 92 116 92 116 92 116 7 7 17 33 45 43 32 16 8 8 11 12 11 11 8 4 0 0 0 0 0 2 3 2 2 5 8 12 16 18 16 92 114 92 116 6 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 3 2 0 58 253 253 255 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253]} {[ 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 115 29 12 5 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 1 2 2 1 0 0 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 27 122 253 253 253 253 252 63 17 43 42 35 24 14 19 24 27 23 16 7 19 71 125 138 120 80 35 92 116 1 2 5 8 92 110 11 11 92 110 8 11 26 52 72 76 61 37 14 3 4 7 92 116 11 92 116 5 2 1 1 2 6 92 114 16 14 11 11 12 16 18 18 92 114 11 7 5 2 1 1 1 2 1 0 0 0 1 3 4 3 2 0 0 0 0 0 0 0 0 2 82 253 253 255 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253 253]}

Categories

Find more on Data Type Conversion 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!