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

# 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.

Willam Willam on 30 Dec 2012

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

Walter Roberson on 30 Dec 2012

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

Willam Willam on 30 Dec 2012

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].

## Products

Answer by Image Analyst on 29 Dec 2012

Is this what you mean:

```array8bit = uint8(doubleArray);
```

Answer by Walter Roberson on 30 Dec 2012

```bin2dec(A,8)
```

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.