Proving there exists a partition of $[a,b]$ with a special property I am trying to prove that

Let $X \subseteq [a,b]$ be a null content set. Given $\varepsilon>0$, prove that there exists a partition $P$ of $[a,b]$ such that the sum of the lengths of the intervals of $P$ that contain some point of $X$ is lower than $\varepsilon$.

My attempt:
By hypotesis, $X$ has got null content. By definition, that means that for all $\varepsilon>0$, we can obtain a finite collection of open intervals $I_1, \dots, I_n$ such that $$X \subseteq I_1\cup \dots \cup I_n \: \: \mbox{e} \: \: \sum_{k=1}^{n} |I_k| < \varepsilon.$$ Lets assume, with no lost of generality, that the intervals $I_n$ are disjoint. Let's say $(a_1,b_1),\dots,(a_n,b_n)$ are the intervals $I_1,\dots,I_n$. Therefore, $$\sum |b_n-a_n| < \varepsilon$$
On the other hand, let $U_1, \dots, U_p$ be disjoint and open sets such that $U_p \neq I_n$ and $\sum |U_p| < \varepsilon$. (This is one of my questions, can I really assume that?)
Let's say $(f_1,h_1),\dots,(f_n,h_n)$ are the intervals $U_1, \dots, U_p$. Then, by assumption, $\sum |h_n-f_n|<\varepsilon$. We now have to consider only the intervals of $U_p$ that have points of $X$. Let these intervals be $(f_{i_1},h_{i_1}), \dots, (f_{i_m},h_{i_m})$ where $i_1, \dots, i_m \in \left\{1, \dots, n \right\}$.
Let $P = \left\{t_0, \dots, t_n \right\}$ be a partition where $t_0=a$, $t_n=b$ and $t_1, \dots, t_{n-1}$ are the endpoints of the intervals $(f_{i_1},h_{i_1}), \dots, (f_{i_m},h_{i_m})$. Then $$P=\left\{a,f_{i_1},h_{i_1},\dots,f_{i_m}, h_{i_m}, b \right\}$$. We gotta make sure that $\sum|h_{i_m}-f_{i_m}|<\varepsilon$ but it does happen by construction.
I think that I might be forcing some affirmations so I'd like any tips to make this proof better.
 A: The only part in your proof that is a little noisy to me is when you take the $U_p$'s to be not equal to the $I_n$'s. You can take them to be disjoint from the $I_n$'s and pairwaise disjoint from themselves. Notice that by taking the $U_p$'s this way you don't have to worry about their length, since they do not contain any point of $X$. To see that you can really take the $U_p$'s this way, prove that the set of finite unions of intervals of the form $(c,d]$ forms an algebra, that is, closed under finite unions and complements.
P.S. By the way i think the statement is not true if you impose the finitness condition to the partition. Think of all rational numbers in $[a,b]$, i.e.
$$ X=\{x \in [a,b] \cap \mathbb{Q}\}$$this is a null set and if $P$ is any finite partition then all of the intervals of $P$ have a rational number, so the sum of the length of the intervals which contain a point of $X$ is always $b-a$.
A proof of the modified statement (one with the finitness condition eliminated) is the following:
Since $X$ is null you can find a countable collection of intervals $(I_n)_{n\in \mathbb{N}}$ such that
$$\bigcup_{i\in \mathbb{N}} I_n \supseteq X$$
and in such a way that
$$\sum_{n \in \mathbb{N}} |I_n| < \varepsilon$$
Now you can make that collection disjoint by using this trick:
$$ J_0 := I_0$$
$$J_{n+1}:= I_{n+1}-\bigcup_{j<n+1} I_j$$
This collection also covers $X$ and by its construction we will have that
$$\sum_{n \in \mathbb{N}} |J_n| \leq \sum_{n \in \mathbb{N}} |I_n|  < \varepsilon$$
Finally, you can "fill" the spaces of $[a,b]$ which are not covered by $(J_n)_n$ with open intervals.
