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

comparar una cadena contra el contenido de un archivo.

Estas en el tema de comparar una cadena contra el contenido de un archivo. en el foro de Java en Foros del Web. Hola a tod@s, soy nuevo en el foro y quisiera aprender java teniendo como maestros a los mejores. La situación es esta: tengo que hacer ...
  #1 (permalink)  
Antiguo 21/12/2011, 17:11
 
Fecha de Ingreso: diciembre-2011
Mensajes: 11
Antigüedad: 12 años, 4 meses
Puntos: 0
Pregunta comparar una cadena contra el contenido de un archivo.

Hola a tod@s,

soy nuevo en el foro y quisiera aprender java teniendo como maestros a los mejores. La situación es esta: tengo que hacer una especie de buscador, es decir, dada una cadena, ver si se encuentra en el contenido de un archivo de texto separado por \n

Por ejemplo, dada la cadena Alejandra, buscar en el archivo que contiene alumnos como
Teresa Dominguez
Paola Lima
Alejandra Viveros
Felipe Rivas
Alejandra Suarez

y mostrar el o los resultados:
Para la busqueda: "Alejandra" se han encontrado:
Alejandra Viveros
Alejandra Suarez

He desarrollado lo siguiente:
una clase para leer el archivo de texto e imprimir las lineas
una clase para leer la peticion desde el teclado

Evidentemente me falta la busqueda y comparación línea a línea de la cadena contra el archivo y almacenar el resultado para desplegarlo después

Alguien me puede orientar?
muchas gracias
saludos
  #2 (permalink)  
Antiguo 21/12/2011, 22:04
Avatar de CapacProg  
Fecha de Ingreso: marzo-2010
Ubicación: Lima - Perú
Mensajes: 324
Antigüedad: 14 años
Puntos: 71
Respuesta: comparar una cadena contra el contenido de un archivo.

Lo que necesitas, es hacer un Método Búsqueda en una de tus clases que reciba como parámetro la cadena a buscar y que devuelva un ArrayList con las cadenas que contienen tu cadena de test.

Como haces esto. Mientras lees linea por línea el archivo, preguntas de la siguiente manera.

Código Java:
Ver original
  1. //construyes un ArrayList aquí
  2. while(!eof)
  3. {
  4. //suponiendo que linea es la variable String que almacena la lectura
  5. if(linea.indexOf(test)!=-1)
  6. //indexOf devuelve el indice de inicio de la ocurrencia de test dentro de linea.
  7. {
  8.   ArrayList.add(linea);
  9. }
  10. //
  11. ...
  12. ...
  13.  
  14. return ArrayList;
  15. }

Y consideras para imprimir si el ArrayList no esta vacio.

Ojo: Omití los nombres de variables para que te sea más fácil su comprensión.
__________________
%
El mejor guerrero no es el que triunfa siempre sino el que vuelve sin miedo a la batalla.
%
  #3 (permalink)  
Antiguo 22/12/2011, 09:31
 
Fecha de Ingreso: diciembre-2011
Mensajes: 11
Antigüedad: 12 años, 4 meses
Puntos: 0
De acuerdo Respuesta: comparar una cadena contra el contenido de un archivo.

Muchísimas gracias!!!

Ahora mismo lo implemento, lo pruebo y te dejo saber los resultados. Sin embargo, te agradezco de antemano el tiempo y el esfuerzo

Saludos
Edu

Etiquetas: aplicacionm, buffered, file, input, reader
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 12:40.