Hint: First convince yourself that $|\mathbb R|=|[0,1)|$; every real in $[0,1)$ can be written in base $2$ as an infinite binary string. Second, $2^{\mathbb N}$ is the set of infinite binary strings. You don't quite have a bijection here, since binary expansions of real numbers are not unique (for example, $0.0111\ldots=0.1$), but you almost do, so it shouldn't be hard to think of two injections $2^{\mathbb N}\to[0,1)$ and $[0,1)\to 2^{\mathbb N}$. Now apply the Cantor-Schröder-Bernstein theorem and you are done.
Added after an edit: Let's produce the desired injections. First of all, the binary expansions of a real number is unique unless it can be written with an infinite tail of $1$s, in which case there is exactly one other binary representation for it, ending with an infinite tail of $0$s. For every real number $x$, let $0.b_1b_2b_3\ldots$ be the unique binary expansion of $x$ without an infinite tail of $1$s. An injection from $[0,1)$ to $2^{\mathbb N}$ is given by $x\mapsto(b_1,b_2,\ldots)$.
Now we want an injection from $2^{N}$ to $[0,1)$. For a sequence $(b_1,b_2,\ldots)$, we could try to view it as the binary expansion of a number and map it to $\sum b_n/2^n$, but this would not be injective. However, we could view it as a decimal expansion instead, where the only ambiguous expansions are those ending with an infinite tail of $9$s. Thus, an injection from $2^{\mathbb N}$ to $[0,1)$ is given by $(b_1,b_2,\ldots)\mapsto \sum b_n/10^n$.