4. Let $[x]$ denote the greatest integer not exceeding the real number $x$, and $\{x\}$ denote the fractional part of $x$. Then the number of all real numbers $x$ that satisfy $2007 x + 2008\{x\} = 2009$ is ( ).
(A) 0
(B) 1
(C) 2
(D) 3
4.C.

Since $x=[x]+\{x\}$, by the given condition we have $2007[x]+4015\{x\}=2009$.
Thus, $\{x\}=\frac{2009-2007[x]}{4015}$.
Since $0 \leqslant\{x\}<1$, we have
$$
\begin{array}{l}
0 \leqslant \frac{2009-2007[x]}{4015}<1 \\
\Leftrightarrow\left\{\begin{array}{l}
2007[x] \leqslant 2009, \\
2009-2007[x]<4015
\end{array}\right. \\
\Leftrightarrow-\frac{2006}{2007}<[x] \leqslant \frac{2009}{2007} .
\end{array}
$$

Therefore, $[x]=0$ or 1.
When $[x]=0$, $\{x\}=\frac{2009}{4015}, x=\frac{2009}{4015}$;
When $[x]=1$, $\{x\}=\frac{2}{4015}, x=\frac{4017}{4015}$.
In summary, there are 2 values of $x$ that satisfy the given condition.