Busqueda en un archivo texto
Holasss
Tengo un archivo texto, lo leo linea a linea.
No tengo problemas en abrirlo, cerrarlo, leer linea por linea etc.
Para esto uso Delphi 7 y las siguientes instrucciones:
----------- CODIGO -----------
var
F: Textfile;
str1: string;
BEGIN
sArchivoDeDatos := trim(efc_archivodedatos.FileName);
AssignFile(f, sArchivoDeDatos); {Paso el nombre del archivo}
Reset(f); {Lectura}
Readln(f, str1);
END;
Mi programa lee grupos de 6 lineas, los datos numericos se promedian y de este promedio se crea un punto en una grafica XY.
OTRO programa externo guarda datos en el archivo texto.
Entonces, si yo leo 6 lineas del archivo de texto y las promedio, que pasa cuando llego al final ? o cuando solo quedan 4 lineas por leer? Pues me espero, tengo un reloj de 6mins.
Asi, si detecto que no pude leer 6 lineas, no saco promedio ni grafico y espero otros 6 minutos.... asi hasta que pueda leer 6 lineas.
PERO (siempre hay un pero) si no logro leer las 6 lineas, tengo que regresarme a la ultima linea leida.
Para esto uso un contador de lineas, tampoco hay problema, el problema es que al querer usar SEEK para regresar a una linea me encuento con:
-----------------------
Delphi syntax:
procedure Seek(var F; N: Longint);
---------------------------------
o sea que usaria
Seek( F, liLinea);
donde liLinea es un Longint pero F, mi variable de archivo NO ES LONGINT, sino es tipo TEXTFILE y no puedo usar SEEK.
He leido los ejemplos de la ayuda en delphi, pero en NINGUNO viene SEEK usando una variable TEXTFILE, sino de ' file of Byte ' , que no es lo que quiero.
En los ejemplos de readln, writeln, reset etc se una una variable de tipo TEXTFILE, no LONGINT.
ALGUIEN podria decirme como usar SEEK o una funcion similar cuando uso un archivo de texto con una variable TEXTFILE???
O de plano uso TStringList con su loadfromfile etc..etc.. ??
Última edición por Ing_Fajardo fecha: 14-04-2005 a las 23:45:43.
|