• Jueves 14 de Noviembre de 2024, 09:43

Autor Tema:  Cadenas Y Archivos  (Leído 1184 veces)

therion87

  • Nuevo Miembro
  • *
  • Mensajes: 20
    • Ver Perfil
Cadenas Y Archivos
« en: Lunes 3 de Septiembre de 2007, 16:35 »
0
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
  1.  
  2. DataInputStream prueba = new DataInputStream(new FileInputStream("C:/Progra/Archivos/alumnos.txt"));
  3.         while(true){
  4.           datos = prueba.readLine();
  5.           if(datos == null){
  6.             break;
  7.           }//impresión de datos del alumno
  8.           salida.println(datos);
  9.       for(int x = 0; x<datos.length(); x++){
  10.         if(datos.charAt(x)==' '){
  11.           cont +=1;
  12.           pos = x;
  13.         }
  14.         if(cont == 1){
  15.           matricula = datos.substring(0, pos);
  16.           pos +=1;
  17.         }
  18.         if(cont == 2){
  19.           nombre = datos.substring(pos,x);
  20.           pos +=1;
  21.         }
  22.         .
  23.                                 .
  24.                                 .
  25.                                 . // y asi sustantivamente que la vaya guardando
  26.  
  27.          
  28.       }
  29.       }
  30.  
  31.  

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:

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

Saludos :-D

hano

  • Miembro activo
  • **
  • Mensajes: 87
    • Ver Perfil
Re: Cadenas Y Archivos
« Respuesta #1 en: Lunes 3 de Septiembre de 2007, 17:21 »
0
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
                                                                                               
Para programadores
http]
[url=https://hardprogrammer.blogspot.com]https]

therion87

  • Nuevo Miembro
  • *
  • Mensajes: 20
    • Ver Perfil
Re: Cadenas Y Archivos
« Respuesta #2 en: Martes 4 de Septiembre de 2007, 19:08 »
0
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
Hola, oye muchas gracias.
Eso era lo que estab buscando.


Gracias Saludos