Ver Mensaje Individual
  #6  
Antiguo 22-03-2013
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Reputación: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola paquechu.


Para leer el archivo de texto podes hacer:
1)
Código Delphi [-]
var
  F  : TextFile;
  str: string;
begin
  AssignFile(F, FNAME);
  Reset(F);
  while not Eof(F) do
  begin
    Readln(F,str);
    // aquí lo que hagas con str
  end;
  CloseFile(F);
end;

2)
Código Delphi [-]
var
 SL: TStrings;
begin
  SL := TStringList.Create;
  try
    SL.LoadFromFile(FNAME);
    // aquí lo que hagas con SL[n]
  finally
    SL.Free
  end
end;

Un ejemplo que devuelve la última línea del archivo log:
Código Delphi [-]
function GetLastLine(const aFileName: string): string;
var
  FS  : TFileStream;
  buf : Char;
  i   : Integer;
begin
  FS := TFileStream.Create(aFileName, fmOpenRead);
  try
    Result := '';
    i := FS.Size + 2; 
    repeat
      FS.Seek(FS.Size-i, soEnd);
      FS.Read(buf, SizeOf(buf));
      Insert(buf, Result, 1);
      Inc(i);
    until buf = #10;
  finally
    FS.Free;
  end;
end;

// llamada ejemplo
procedure TForm1.Button1Click(Sender: TObject);
begin
  ShowMessage(GetLastLine('C:\ARCHIVO_LOG.LOG'))
end;
De este modo es mucho mas rápido que leer todo el archivo si te decidis por obtener datos con, por ejemplo, un TTimer.

Pero el último código es sólo una aproximación, con muchos supuestos, podría funcionar o no dependiendo del formato con que guarda las líneas la aplicación. Sería muy útil si pudieras poner textualmente (copiar/pegar) un trozo del texto que se genera en el archivo log.

Ahora si lo que estas buscando es obtener la última línea en tiempo real y la aplicación generadora no envía ningún mensaje cuando terminó de guardar una línea, no conozco como lograrlo.

Espero que alguna opción te sea útil.

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita