Foro de elhacker.net

Programación => Java => Mensaje iniciado por: jazz07 en 27 Marzo 2017, 18:32 pm



Título: Login con archivo
Publicado por: jazz07 en 27 Marzo 2017, 18:32 pm
Hola amigos, quisiera si me pueden ayudar con este problema que tengo, lo que pasa esque tengo que hacer un login pero usando archivo .txt donde se almacenara el nombre, apellido y contrasena de cada usuario (ejemplo: Jose;Perez;12345;) estaran separados por un ";" , tengo creada una clase usuario (con sus respectivos get y set) y tengo otra clase que registra los usuarios, y con la que tengo problemas es con la que obtiene los usuarios para luego hacer la validacion.


codigo:
Código:
public ArrayList verificaUS () throws FileNotFoundException, IOException{
   
        String sCadena;
        ArrayList <Usuario> lista = new ArrayList <>();
       
       
        FileReader fr = new FileReader("Usuario.txt");
        BufferedReader bf = new BufferedReader(fr);
       
        while ((sCadena = bf.readLine())!=null) {
           
            String[] infoUS = sCadena.split(";");
                       
            Usuario usu = new Usuario(infoUS[0],infoUS[1],infoUS[2]);
            System.out.println(usu);
            lista.add(usu);
           
        }
       
        return lista;
   
    }

se supone que este codigo deberia leer del archivo e ir pasando los datos(nombre, apellido, Contraseña) a un arreglo que posterior mente se pasa a una lista, pero al momento de imprimir esa lista solo imprime puros caracteres(basura).
nose a que se puede estar debiendo esto.
si alguno de ustedes pudiera ayudarme a solucionar el problema o proponer otra solucion seria de mucha ayuda.
saludos!!!


Título: Re: Login con archivo
Publicado por: miguel96 en 31 Marzo 2017, 12:26 pm
Estas imprimiendo el objeto, es decir, tu lo que quieres es imprimir el nombre, apellido y contraseña, por lo que en al imprimir por pantalla, tendrías que poner algo así.

Código:
System.out.println(usu.getNombre()+" "+usu.getApellido()+" "+usu.getCOntraseña());

Esto ya va a depender de los nombres que le hayas puesto a tus getter.


Título: Re: Login con archivo
Publicado por: cunian en 17 Abril 2017, 03:56 am
Amigo, este metodo que te voy a pasar sirve para cargar los datos de un archivo plano a una lista.

Código:
public static void CargarLista_Usuarios() {
        try {

            String line = null;
            ArrayList <Usuario> lista = new ArrayList <>();
            //SE CREA EL OBJETO PARA LEER EL FECIHERO
             FileReader fr = new FileReader("Usuario.txt");
            BufferedReader leerfichero = new BufferedReader(new FileReader(fr));
            //igual lo que este en el fichero a la variable y digo que no tiene que estar vacia.
            while ((line = leerfichero.readLine()) != null) {
                //lee las tabulaciones y las ingresa en una variable
                StringTokenizer mistokens = new StringTokenizer(line, ";");
                //CREA UNA VARIABLE PARA CADA ATRIBURO QUE SE ENCUENTRA DENTRO DEL ARCHIVO DE MANERA ORDENADA
                String documento = mistokens.nextToken().trim();
                String nombre = mistokens.nextToken().trim();
                String rol = mistokens.nextToken().trim();
               
                LISTA.add(new Abs_usuario(doc, nombre, rol));
            }

            leerfichero.close();
        } catch (Exception e) {
            JOptionPane.showMessageDialog(null, e.getMessage());
        }
    }