Lineas en blanco archivo plano con java

HOla a todos, mi duda es la siguiente necesito leer un fichero del disco y trabajar con los datos en el mismo, esto lo hago con la clase scanner para leer del disco y un vector de String para alalacenar los datos del objeto scanner, como se ve a continuacion:

Vector datos = new Vector();
String cadena="";
File f = new File( "C:\\entrada.txt" );
Scanner sc = new Scanner(f);
sc.useDelimiter("\n");
while(sc.hasNext()){
datos.add(sc.next());
}

for(String sElemento: datos){
System.out.println(sElemento+"---");
}

la salida en pantalla es:
entrada de datos
---
es
---

---
uno
---
dos
---

---
tres
---
cuatro---

la necesitaria de esta forma para poder manpular los datos en los pares ingresados:

entrada de datos

es
---

---
uno

dos
---

---
tres

cuatro---

El archivo original es:

entrada de datos
es

uno
dos

tres
cuatro

los cuales necesito poder leer de dos en dos o sea las posiciones en el vector deberian quedar de la siguiente forma:
primera posicion: entrada de datos es
segunda posicion: uno dos
tercera posicion: tres cuatro
pero no se como hacer para que se almacene en la variable hasta que haya un renglon en blanco, o para que el programa me realice esta diferenciacion

Muchas gracias por su ayuda