• Martes 12 de Noviembre de 2024, 20:44

Autor Tema:  Buscar Cadenas En Archivos Txt  (Leído 5990 veces)

Sergini

  • Nuevo Miembro
  • *
  • Mensajes: 4
    • Ver Perfil
Buscar Cadenas En Archivos Txt
« en: Miércoles 31 de Agosto de 2005, 22:48 »
0
Hola a todos, espero que alguien me pueda ayudar a buscar una cadena de caracteres en varios archivos TXT (en un mismo directorio).

Lo que no se es como leer los archivos... se lee por letra, palabra o línea?
Luego de encontrar la palabra, quiero guardar la posiscion del archivo para accesarlo mas tarde, se puede?

Gracias por su ayuda

Yo seguire trabajando  :comp:

bartolomeo

  • Miembro MUY activo
  • ***
  • Mensajes: 207
    • Ver Perfil
Re: Buscar Cadenas En Archivos Txt
« Respuesta #1 en: Miércoles 31 de Agosto de 2005, 23:12 »
0
Hola comando como estas???

para buscar un string puedes usar la pos, y para buscar un string apartir de una posicion puedes usar posex.  :blink:

si tienes dudas pos nomas dime  :D

Nos vemos y bienvenido a solocodigo, en lo que se te presente ayuda tendras  <_<

[size=109]Por que Rolo soy yo¡¡¡¡¡[/size]

bartolomeo

  • Miembro MUY activo
  • ***
  • Mensajes: 207
    • Ver Perfil
Re: Buscar Cadenas En Archivos Txt
« Respuesta #2 en: Miércoles 31 de Agosto de 2005, 23:18 »
0
Citar
Gracias por su ayuda

Yo seguire trabajando 

que bacana tu actitud, asi se habla

[size=109]Por que Rolo soy yo¡¡¡¡¡[/size]

Sergini

  • Nuevo Miembro
  • *
  • Mensajes: 4
    • Ver Perfil
Re: Buscar Cadenas En Archivos Txt
« Respuesta #3 en: Miércoles 31 de Agosto de 2005, 23:25 »
0
Gracias por tu "ayuda", pero mi pregunta es:

¿Como leer un archivo de texto para luego buscar una cadena de caracteres dentro de el?

Espero que esta vez la pregunta haya sido mas clara. :blink:

bartolomeo

  • Miembro MUY activo
  • ***
  • Mensajes: 207
    • Ver Perfil
Re: Buscar Cadenas En Archivos Txt
« Respuesta #4 en: Miércoles 31 de Agosto de 2005, 23:51 »
0
que huev.....n :brickwall:

ahora que leo tienes toda la razon, para leer un archivo, PRARA LEERLO puedes usar esto:

MiMemo.Lines.LoadFromFile('C:\a.txt');

y listolisssss

[size=109]Por que Rolo soy yo¡¡¡¡¡[/size]

bartolomeo

  • Miembro MUY activo
  • ***
  • Mensajes: 207
    • Ver Perfil
Re: Buscar Cadenas En Archivos Txt
« Respuesta #5 en: Miércoles 31 de Agosto de 2005, 23:58 »
0
ahhh se me olvidaba decirte hay lo que haces es tomar el texto y pasarlo aun memo y desde hay ppuedes hacer busquedas, eso te podra servir para lo que quieres.  :unsure:
te lo recomiendo por que es que buscar desde un memo es SUPER pero SUPER pero SUPER facillll  :devil:

[size=109]Por que Rolo soy yo¡¡¡¡¡[/size]

bartolomeo

  • Miembro MUY activo
  • ***
  • Mensajes: 207
    • Ver Perfil
Re: Buscar Cadenas En Archivos Txt
« Respuesta #6 en: Jueves 1 de Septiembre de 2005, 16:10 »
0
Código: Text
  1. procedure TForm1.Button1Click(Sender: TObject);
  2. var
  3. i:Integer;
  4. j:Integer;
  5. Posicion:Integer;
  6. begin
  7.  
  8.   for j:= 0 to listbox1.Items.Count - 1 do
  9.   begin
  10.    
  11.     for i:=0 to memo1.lines.count-1 do
  12.       begin
  13.  
  14.       if Pos(Listbox1.Items[j],memo1.lines[i]) <> 0 then
  15.       begin
  16.       ShowMessage('Encontrada '+Listbox1.Items[j]);
  17.       end;
  18.       end;
  19.   end;
  20. end;
  21.  
  22. procedure TForm1.Button2Click(Sender: TObject);
  23. var
  24. nBlanco:Integer;
  25. nCont:integer;
  26. cPalabra:String;
  27. begin
  28.   for nCont:=1 to Length(Edit1.text) do
  29.   begin
  30.    cPalabra:=cPalabra + edit1.text[nCont];
  31.  
  32.      if edit1.text[nCont] = ' ' then
  33.      begin
  34.      ListBox1.Items.Add(cPalabra);
  35.      cPalabra:=''
  36.      end;
  37.   end;
  38.   ListBox1.Items.Add(cPalabra);
  39.  
  40. end;
  41.  

Este es un ejemplo de busqueda que encontre, talves te sriva para lo que quieres:

pasa palabras de un edit a un listbox, y comprueba si las palabras del listbox estan en el memo.  :ph34r:

Espero te sirva, y sigue escribiendo por si hay alguna duda  :hola:

[size=109]Por que Rolo soy yo¡¡¡¡¡[/size]

Sergini

  • Nuevo Miembro
  • *
  • Mensajes: 4
    • Ver Perfil
Re: Buscar Cadenas En Archivos Txt
« Respuesta #7 en: Jueves 1 de Septiembre de 2005, 16:16 »
0
Gracias Barto, el ejemplo esta exelente y esa opcion es muy buena y fácil, pero el problema es que voy a abrir varios archivos y son muy muy extensos, he leido que se puede copiar el contenido del archivo a un buffer pero no he encontrado ejemplos donde se haga esto.

Aunque no creo que haya mucho problema si no utilizo buffers, simplemente quiero leer el archivo y buscar línea por línea, cuando encuentre la cadena deseada voy a guardar la posisción donde se encontró en una lista que va a contener todas las posisciones en donde se encontro la cadena buscada.

Ya tengo casi todo resuelto menos como leer líneas de un archivo TXT.   :angry:  

bartolomeo

  • Miembro MUY activo
  • ***
  • Mensajes: 207
    • Ver Perfil
Re: Buscar Cadenas En Archivos Txt
« Respuesta #8 en: Jueves 1 de Septiembre de 2005, 16:48 »
0
Pues por eso por que no lo pasas a un memo eso es mas facil que intentar leer el archivo desde su origen

[size=109]Por que Rolo soy yo¡¡¡¡¡[/size]

bartolomeo

  • Miembro MUY activo
  • ***
  • Mensajes: 207
    • Ver Perfil
Re: Buscar Cadenas En Archivos Txt
« Respuesta #9 en: Jueves 1 de Septiembre de 2005, 17:15 »
0
es mas si no quieres que el memo se vea simplemente no lo pones visible y va a a ser transparente para el usuario

[size=109]Por que Rolo soy yo¡¡¡¡¡[/size]

Sergini

  • Nuevo Miembro
  • *
  • Mensajes: 4
    • Ver Perfil
Re: Buscar Cadenas En Archivos Txt
« Respuesta #10 en: Jueves 1 de Septiembre de 2005, 17:51 »
0
Ya pude!!!!  :kicking:

La verdad es que es bastante sencillo, solo abri el archivo con el comando AssignFile y declare una variable de tipo TextFile.

Para leeer una linea Radln y ya!
Ahora a programar  :comp:

Amilius

  • Miembro HIPER activo
  • ****
  • Mensajes: 665
    • Ver Perfil
Re: Buscar Cadenas En Archivos Txt
« Respuesta #11 en: Jueves 1 de Septiembre de 2005, 18:04 »
0
Más sencillo es usando un objeto TStringList:

Lo creas, llamas a un LoadFromFile con el nombre del archivo y ya tienes el archivo en buffer y puedes acceder a cualquiera de sus líneas como si fuera un arreglo estático. Puedes ordenar la lista de cadenas, modificar lo que quieras y puedes guardarla con SaveToFile.

Después de usarlo recuerda llamar a .free para destruirlo.

bartolomeo

  • Miembro MUY activo
  • ***
  • Mensajes: 207
    • Ver Perfil
Re: Buscar Cadenas En Archivos Txt
« Respuesta #12 en: Jueves 1 de Septiembre de 2005, 18:19 »
0
Uffff me alegro,


lo "normal" con delphi, un TextFile, abierto con AssignFile, leer con ReadLn, escribir con WriteLn, etc...  :kicking:

aunque personalmente me gusta mucho la idea del memo  <_< , no es por que la haya formulado yo  :whistling:  si no que la considero mas facil para buscar cadenas y tener un directorio de palabras  :D , pero que bacano que lo hayas logrado.

espero que sigas escrbiendo y me ayudes cuando lo necesite dado que hasta hace muy poco empece con delphi

[size=109]Por que Rolo soy yo¡¡¡¡¡[/size]