Programación General > Java

 Cadenas Y Archivos

(1/1)

therion87:
Hola a Tod@s:

Tengo un problema, estoy haciendo un programa que lea desde un archivo los datos de un alumno.

Tengo estos datos:
Matricula, Nombre, ApePaterno, Sexo, Cal1, Cal2, Cal3, Cal4, Cal5
999999 juan hernandez H 90 89 100 87 85

Estos datos están separados por un espacio.

Lo que necesito es que despues de un espacio guarde la cadena anterior en una variable.
Tengo algo menos asi:

--- Código: Text --- DataInputStream prueba = new DataInputStream(new FileInputStream("C:/Progra/Archivos/alumnos.txt"));        while(true){          datos = prueba.readLine();          if(datos == null){            break;          }//impresión de datos del alumno          salida.println(datos);      for(int x = 0; x<datos.length(); x++){        if(datos.charAt(x)==' '){          cont +=1;          pos = x;        }        if(cont == 1){          matricula = datos.substring(0, pos);          pos +=1;        }        if(cont == 2){          nombre = datos.substring(pos,x);          pos +=1;        }        .                                .                                .                                . // y asi sustantivamente que la vaya guardando                 }      }  
Pero no me guarda lo que necesito, me guarda desde el principio hasta la mitad de las siguiente palabra, asi...


--- Citar ---Datos del alumno:
    Matricula: Matricula Nombr
    Nombre:
--- Fin de la cita ---

Ojala que me puedan ayudar a que guarde lo que necesito.

Saludos :-D

hano:
Para "parsear" una línea puedes:

1. Utilizar el método split de la clase String.

2. Utilizar la clase StringTokenizer.

3. Trabajar con expresiones regulares (java.util.regex)

Lo más sencillo es lo primero, pero puedes investigar el resto por si tienes curiosidad.

Un saludo.

Luis Javier López Arredondo

therion87:

--- Cita de: "hano" --- Para "parsear" una línea puedes:

1. Utilizar el método split de la clase String.

2. Utilizar la clase StringTokenizer.

3. Trabajar con expresiones regulares (java.util.regex)

Lo más sencillo es lo primero, pero puedes investigar el resto por si tienes curiosidad.

Un saludo.

Luis Javier López Arredondo
--- Fin de la cita ---
Hola, oye muchas gracias.
Eso era lo que estab buscando.


Gracias Saludos

Navegación

[0] Índice de Mensajes

Ir a la versión completa