Cómo leer línea por línea usando FileReader

Gracias por su atención.

He creado un programa que estoy usando un formulario de inicio de sesión y un formulario de registro. Una vez que los usuarios registren su correo electrónico y su contraseña se guardará en submit.txt. Luego volverán al formulario de inicio de sesión e ingresarán su correo electrónico y contraseña que se guardan en submit.txt.

En mi código, estoy usando el archivo de escritura para el formulario de registro y el archivo de lectura para el formulario de inicio de sesión. Pero no funciona. Sé mi problema en el código utilizado para Leer archivo. ¿Me pueden ayudar a darme cuenta de eso?

Muchas gracias por tu ayuda.

 if (checkPassword(usern, hash)) {
    System.out.println("Logged in!");
    ChooseWindow ptb = new ChooseWindow();
    ptb.setVisible(true);
    LoginWindow.this.dispose();
 } else {
    System.out.println("Wrong password");
 }

 public boolean checkPassword(String username, String pass) {
    try {
        FileReader inFile = new  FileReader("/users/Ender/Desktop/GetUser/submit.txt");
        BufferedReader inStream = new BufferedReader(inFile);
        String inString;

        while ((inString = inStream.readLine()) != null) {}
        inStream.close();                       
    }catch (IOException e) {
        e.printStackTrace();
    }
    return false;
 }
Respuesta 1

Aquí está mi código para leer de un archivo:

 String line;

    try {

        BufferedReader bufferreader = new BufferedReader(new FileReader("C:\\Users\\ahmad\\Desktop\\aaa.TXT"));


        while ((line = bufferreader.readLine()) != null) {     
          /** 
            Your implementation  
          **/

        }

    } catch (FileNotFoundException ex) {
        ex.printStackTrace();
    } catch (IOException ex) {
        ex.printStackTrace();
    }
Respuesta: 2

Asumiendo que tenemos un archivo con usernamey hashalmacenado de la siguiente manera:

Hello World
Test Test
DumbUser 12345
Usuario sjklfashm-0998 () ( &

y queremos usar la primera palabra en cada línea como usernamey la segunda como password/ hash. Entonces la idea es:

  • Leer una linea
  • Divida la línea en partes en ""
  • Compare la primera parte con usernamela segunda conpass
  • Si hay una coincidencia devuelve verdadero, de lo contrario, comience de nuevo

Lo que da como resultado este código:

public boolean checkPassword(String username, String pass) {
    // if there is no username or no password you can not log in
    if(username == null || pass == null){ // diff
        return false;                     // diff
    }                                     // diff
    try {
        FileReader inFile = new  FileReader(PASSWORD_FILE);
        BufferedReader inStream = new BufferedReader(inFile);
        String inString;

        while ((inString = inStream.readLine()) != null) {
            // we split every line into two parts separated by a space " "
            String usernameHash[] = inString.split(" "); // diff
            // if there are more or less than two parts this line is corrupted and useless
            if(usernameHash.length == 2                  // diff
                    && username.equals(usernameHash[0])  // diff
                    && pass.equals(usernameHash[1])){    // diff
                // if username matches the first part and hash the second everything is goo
                return true;                             // diff
            }                                            // diff
        }
        inStream.close();
    }catch (IOException e) {
        e.printStackTrace();
    }
    return false;
}

Marqué las partes donde mi código difiere del tuyo con // diff

Respuesta: 3

Necesito su ayuda sobre JAVA RMI, desarrollé un programa de muestra utilizado para ordenar la tabla. pero obtuve esta excepción: Erreur RemoteException ocurrió en el hilo del servidor; La excepción anidada es: java.rmi ....

Tengo una aplicación web que usa hibernate 3.6.4 y spring 3.2.4 (mvc, tx y seguridad) y se ejecuta en tomcat 7. Cada vez que implemento una versión más nueva de mi aplicación sin reiniciar tomcat, entonces ...

Posible duplicado: usando eval en Java En javascript puedo llamar a una función usando eval como: eval ('my_javascript_code;') ¿Hay algo así en C # o JAVA que me permita ejecutar C # o JAVA ...

En mi aplicación de Android tengo que comunicarme con un servicio web https y leer la respuesta. He informado al servidor que configuró SSL con TLS 1.2. Estoy usando el siguiente código de muestra para ...