MATLAB Answers

Willam Willam

Convert a multidimensional array into respective single array

Asked by Willam Willam
on 29 Dec 2012

Hi. I want ask how I need to convert the data that I read from text file and put it in the single the form of 8 bits per each array. Thanks for help. Appreciate.


Sir, I used fread() function previously. Is that this function cant used?

fread() is for binary files, not for converting text.

From Image Analyst comment, I had use importdata() function and manage get my data in the form of A=[50 20]. But how I need to convert it into A=[11111111 11111111] and separate it into two arrays like A1=[11111111] A2=[11111111].



2 Answers

Answer by Image Analyst
on 29 Dec 2012

Is this what you mean:

array8bit = uint8(doubleArray);


Answer by Walter Roberson
on 30 Dec 2012

Putting your data into different arrays is not advised. Please read

To convert your values, use


This will return a character array, one row for each input value, with each character being '0' or '1'. These will not be the numbers 0 and 1. If you want the numbers 0 and 1 instead of the characters '0' and '1', then use

bin2dec(A,8) - '0'

The result would be a number of rows, each 8 columns wide, with one row per input number.

If you were hoping that (for example) the input value 5 would convert to the decimal number 00000101, then although the conversion to decimal-coded-binary could be done, keep in mind that decimal values automatically drop leading 0's on output, so such an entry would print out as 101 rather than 00000101.


Ok. I will try it when I'm free. Because prepare for final exam. Thanks ya Sir Walter

Sir walter, i tested already. It works but only for 1st array only. How to make it all arrays are recorded through this code? Thanks

Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

MATLAB Academy

New to MATLAB?

Learn MATLAB today!