Java - Leer un dato de una línea con espacios en blanco que se encuentra en un archivo

 
Vista:
sin imagen de perfil
Val: 8
Ha aumentado su posición en 5 puestos en Java (en relación al último mes)
Gráfica de Java

Leer un dato de una línea con espacios en blanco que se encuentra en un archivo

Publicado por Jesús (5 intervenciones) el 11/02/2017 13:51:46
Buenas, tengo que leer unos DNIs que se encuentra en un archivo de texto con el siguiente formato:
Apellido1 Apellido2 Nombre DNI E-mail
y escribir en otro archivo los DNIs que sean pares. Esta segunda parte la sé hacer pero me encuentro el problema en la lectura que no sé como hacer en Java que me lea a partir del tercer espacio en blanco los 8 dígitos del DNI (es sin letra), es decir, empiece a leer a partir del espacio en blanco del Nombre.
Actualemte tengo el siguiente código:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
public static void dniPar() throws FileNotFoundException, IOException
    {
        String linea;
        String dni;
        int dniInt;
        try
        {
            DataOutputStream out = new DataOutputStream(new BufferedOutputStream(new FileOutputStream("pares.txt")));
            DataInputStream in = new DataInputStream(new BufferedInputStream(new FileInputStream("datos.txt")));
            while (in.readLine()!= null)
            {
            linea = in.readLine();
            dni =
            dniInt = Integer.parseInt(dni);
            if( dniInt%2 == 0)
            {
                out.writeInt(dniInt);
            }
            }
            out.close();
            in.close();
        }catch (FileNotFoundException e)
        {
            System.out.println("Error: Archivo no encontrado");
        }
        catch(IOException e)
        {
            System.out.println("Error de E/S");
        }
 
    }

¿Cómo puedo leer en Java sólo la parte del DNI que necesito? Teniendo en cuenta con los apellidos y nombres son de longitud variable por lo que no podría hacerlo con la función "substring".

Gracias de antemano
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 96
Ha disminuido 1 puesto en Java (en relación al último mes)
Gráfica de Java

Leer un dato de una línea con espacios en blanco que se encuentra en un archivo

Publicado por Bruno (43 intervenciones) el 12/02/2017 00:09:09
Yo leería línea por línea el archivo y utilizaría la clase StringTokenizer. Busca por ese lado.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar