Foros del Web » Programación para mayores de 30 ;) » Java »

[SOLUCIONADO] Buscar palabra ingresada desde scanner en un archivo de texto en java netbeans

Estas en el tema de Buscar palabra ingresada desde scanner en un archivo de texto en java netbeans en el foro de Java en Foros del Web. El asunto es que necesito crear un programa donde se pida un usuario y contraseña, la idea es que cuando el usuario digite ejemplo: carlos, ...
  #1 (permalink)  
Antiguo 07/12/2014, 00:58
 
Fecha de Ingreso: diciembre-2014
Mensajes: 15
Antigüedad: 9 años, 11 meses
Puntos: 0
Pregunta Buscar palabra ingresada desde scanner en un archivo de texto en java netbeans

El asunto es que necesito crear un programa donde se pida un usuario y contraseña, la idea es que cuando el usuario digite ejemplo: carlos, y luego cuando el programa le pida la contraseña e ingrese ejemplo: 123456, busque esos datos en un archivo de texto previamente creado tipo ejemplo "datos.txt" . Ok el tema es que en el archivo de texto van haber mas de 10 nombres y contraseñas a la par algo asi: juan;123456.
Algun ejemplo de como leer un .txt linea por linea y si lo acerta ingrese al sistema!

Nota 1 (uso ";") punto y coma para separar los datos : carlos;123456, esto para un split y un for que no he podido montar.

Nota 2 no es necesario que el usuario digite la contraseña que esta la par del nombre de usuario, la idea es que son 10 posibles nombres de usuario y 10 posibles contraseñas, asi que tanto puede elegir el primer nombre de usuario del archivo de texto, como la ultima contraseña de la ultima linea de las 10!!!!!!!!!!!

lo que he hecho :

package buscando_palabra_en_txt;

import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.Scanner;
import javax.swing.JOptionPane;

public class Buscando_palabra_en_txt{

public static void main(String[] args) {

java.util.Scanner scanner = new Scanner(System.in);

System.out.println("Introduce tu usuario");
String request = scanner.next();

try {
final BufferedReader reader = new BufferedReader(new FileReader("C:/ficheros/datos.txt"));
String line = "";
while((line = reader.readLine())!= null){
if(line.indexOf(request)!= -1){
System.out.println("se encontro la palabra "+ line);
}

}reader.close();
} catch (FileNotFoundException e) {e.printStackTrace();
} catch (IOException e) {e.printStackTrace();
}
}
}

Última edición por elpoetafc2; 07/12/2014 a las 03:28
  #2 (permalink)  
Antiguo 07/12/2014, 04:14
Avatar de Profesor_Falken  
Fecha de Ingreso: agosto-2014
Ubicación: Mountain View
Mensajes: 1.323
Antigüedad: 10 años, 3 meses
Puntos: 182
Respuesta: Buscar palabra ingresada desde scanner en un archivo de texto en java netb

Buenas,

Encontrar el usuario es tan sencillo como esto:

Código Java:
Ver original
  1. while((line = reader.readLine())!= null) {
  2.     if(line.indexOf(";")!= -1){
  3.         if (line.split(";")[0].equalsIgnoreCase(request)) {
  4.             System.out.println("se encontro el usuario "+ request);
  5.         }
  6.     }
  7. }

Respecto a tu requisito número 2, creo que tienes que repensarlo, ya que no tiene ningún sentido y lo único que hace es complicar las cosas.

Nota: Intenta utilizar la herramienta Hightlight para resaltar el código que posteas.


Un saludo
__________________
If to err is human, then programmers are the most human of us
  #3 (permalink)  
Antiguo 07/12/2014, 14:20
 
Fecha de Ingreso: diciembre-2014
Mensajes: 15
Antigüedad: 9 años, 11 meses
Puntos: 0
Respuesta: Buscar palabra ingresada desde scanner en un archivo de texto en java netb

Gracias profe! como siempre acertado en tus respuestas, lo de la contraseña simplemente lo vuelvo aplicar a otra variable cuando necesite ingresar una contraseña lo busco con ese mismo while!! quede claro con tu ayuda!!

Gracias nuevamente.

Última edición por elpoetafc2; 07/12/2014 a las 14:44
  #4 (permalink)  
Antiguo 12/12/2014, 23:55
 
Fecha de Ingreso: diciembre-2014
Mensajes: 4
Antigüedad: 9 años, 11 meses
Puntos: 0
Respuesta: Buscar palabra ingresada desde scanner en un archivo de texto en java netb

Buenas compañeros,

Tengo una duda, en este código:

Código Java:
Ver original
  1. while((line = reader.readLine())!= null) {
  2.     if(line.indexOf(";")!= -1){
  3.         if (line.split(";")[0].equalsIgnoreCase(request)) {
  4.             System.out.println("se encontro el usuario "+ request);
  5.         }
  6.     }
  7. }

¿Para qué usan el index.Of?

De antemano, muchas gracias.
  #5 (permalink)  
Antiguo 13/12/2014, 02:17
Avatar de Profesor_Falken  
Fecha de Ingreso: agosto-2014
Ubicación: Mountain View
Mensajes: 1.323
Antigüedad: 10 años, 3 meses
Puntos: 182
Respuesta: Buscar palabra ingresada desde scanner en un archivo de texto en java netb

Buenas,

Sirve para asegurarse de que existe un separador en la linea (;) antes de procesar.


Un saludo
__________________
If to err is human, then programmers are the most human of us

Etiquetas: netbeans, palabra, programa, scanner, string
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:53.