SoloCodigo

Programación General => Java => Mensaje iniciado por: hera en Sábado 10 de Septiembre de 2005, 15:48

Título: Muy Urgente!!!!!
Publicado por: hera en Sábado 10 de Septiembre de 2005, 15:48
Hola a todos, tengo exámen de java y teng una duda:

Si yo quiero validar a un usuario por ejemplo.
el usuario introduce por teclado su nombre de usuario y su password y yo tng en un fichero de texto todos los nombres de usuario con las contraseñas de todos los usuarios q tng dados de alta, por ejemplo una linea por usuario y en dicha línea el nombre de usuario espacio password, ¿Cómo puedo procesar el fichero para comprobar q el usuario es válido????
muchas gracias
Título: Re: Muy Urgente!!!!!
Publicado por: chimps en Sábado 10 de Septiembre de 2005, 19:31
podes leer una linea por vez del archivo y almacenarla en un String, luego usar el metodo split(" ") para separarla en un arreglo de 2 strings (arreglo[0] --> usuario, arreglo[1] --> password)..luego los comparas con el input del usuario para ver si son iguales...

Algo tipo...
Código: Text
  1.  
  2. import java.io.*;
  3.  
  4.   public void leer_menu() {
  5.  
  6.     String[] temp = new String[2];
  7.  
  8.     try{
  9.       FileReader file = new FileReader("archivo.txt");
  10.       BufferedReader br = new BufferedReader(file);
  11.       String linea = null;
  12.  
  13.       while((linea = br.readLine()) != null) {
  14.         temp = linea.split(" ");
  15.         if(temp[0].compareTo([input_username]) && temp[1].compareTo([input_password])) {
  16.                                               // dejar pasar al usuario, salir del while  
  17.                                          }
  18.       }
  19.     }
  20.     catch (IOException e) {
  21.       System.out.println("Error: " + e);
  22.     }
  23.   }
  24.  
  25.  
Título: Re: Muy Urgente!!!!!
Publicado por: hera en Domingo 11 de Septiembre de 2005, 00:12
Muchisimas gracias!!!!! me ha sido de mucha ayuda.
Título: Re: Muy Urgente!!!!!
Publicado por: chimps en Domingo 11 de Septiembre de 2005, 01:54
no probl.
Título: Re: Muy Urgente!!!!!
Publicado por: aloneibar en Lunes 12 de Septiembre de 2005, 11:08
Cita de: "chimps"
podes leer una linea por vez del archivo y almacenarla en un String, luego usar el metodo split(" ") para separarla en un arreglo de 2 strings (arreglo[0] --> usuario, arreglo[1] --> password)..luego los comparas con el input del usuario para ver si son iguales...

Algo tipo...
Código: Text
  1.  
  2. import java.io.*;
  3.  
  4.   public void leer_menu() {
  5.  
  6.     String[] temp = new String[2];
  7.   
  8.     try{
  9.       FileReader file = new FileReader("archivo.txt");
  10.       BufferedReader br = new BufferedReader(file);
  11.       String linea = null;
  12.  
  13.       while((linea = br.readLine()) != null) {
  14.         temp = linea.split(" ");
  15.         if(temp[0].compareTo([input_username]) && temp[1].compareTo([input_password])) {
  16.                                               // dejar pasar al usuario, salir del while  
  17.                                          }
  18.       }
  19.     }
  20.     catch (IOException e) {
  21.       System.out.println("Error: " + e);
  22.     }
  23.   }
  24.  
  25.  
No entiendo porque lo meter en un archivo de texto. ¿Porque no metes los datos en un access (BBDD), pe? Es más consistente y tiene mejor rendimiento.
Título: Re: Muy Urgente!!!!!
Publicado por: aloneibar en Lunes 12 de Septiembre de 2005, 11:09
No entiendo porque lo meter en un archivo de texto. ¿Porque no metes los datos en un access (BBDD), pe? Es más consistente y tiene mejor rendimiento.
Título: Re: Muy Urgente!!!!!
Publicado por: chimps en Martes 13 de Septiembre de 2005, 02:45
Cita de: "aloneibar"
No entiendo porque lo meter en un archivo de texto. ¿Porque no metes los datos en un access (BBDD), pe? Es más consistente y tiene mejor rendimiento.
estoy de acuerdo, aunque la duda original era por el tema de un examen de java, algo basico nada mas