Foro de elhacker.net

Programación => Java => Mensaje iniciado por: NatzMorel en 14 Junio 2012, 03:31 am



Título: Recorrer un Arreglo en Java (Buscar String)
Publicado por: NatzMorel en 14 Junio 2012, 03:31 am
Estoy haciendo una agenda telefónica en Java, guardo los contactos como líneas en un archivo de texto, separados por una pleca. Utilizo el SPLIT para dividir las lineas en campos y guardarlos en un arreglo.
Se necesita que al usuario ingresar el nombre de un contacto, el programa me muestre la información restante.
Esta es parte del código que tengo para recorrer el arreglo mientras busca por el nombre que el usuario ingreso. Si le dejo la condición no muestra nada, y si se la quito me imprime todos los contactos. Sé que no es gran complicación una vez teniendo el arreglo pero creo que después de tanto batallar me he bloqueado y simplemente no sale. No sé si lo estoy recorriendo mal o estoy formulando mal la condición o qué.

Agradeceré la ayuda que puedan brindarme al respecto.

Código:
System.out.print("Ingrese el nombre del contacto: ");
        String Buscar = Leer.nextLine();
       
        while ((linea = br.readLine())!=null) {
            String[] A = linea.split("/");
            String Nombre1="",Numero1="", Email1="";
           
            for (int x=0; x<A.length; x++){
                if(A
  • .compareToIgnoreCase(Buscar)==0)
                    System.out.println(A
  • );
            }
        }


Título: Re: Recorrer un Arreglo en Java (Buscar String)
Publicado por: ollo en 14 Junio 2012, 11:31 am
Prueba a ver si funciona esto:

Código:
System.out.print("Ingrese el nombre del contacto: ");
        String Buscar = Leer.nextLine();
       
        while ((linea = br.readLine())!=null) {
            String[] A = linea.split("/");
            String Nombre1="",Numero1="", Email1="";
           
            for (int x=0; x<A.length; x++){
                B=A[x].toLowerCase();
                if(B.equals(Buscar.toLowerCase()))
                    System.out.println(linea);

            }
        }