Einzelnen Beitrag anzeigen

Benutzerbild von glkgereon
glkgereon

Registriert seit: 16. Mär 2004
2.287 Beiträge
 
#4

Re: große Textdatei einlesen und filtern

  Alt 7. Aug 2005, 08:40
hast du ein beispeil für einen datei-teil? ich weiss nämlich nicht so richtig was genau du da filtern willst.

deine methode die datei auszulesen ist aber imho der richtige ansatz

ich würde nur überlegen statt erst alles zu holen und dann zu parsen es "gleichzeitig" zu machen.

so in der art:

Delphi-Quellcode:
var
  start: Integer;
  Puffer: String;
  datei: file;
  StartIn, StopIn, Nimm: Boolean;
begin
  if OpenDialog1.Execute then
    begin
    dateiname := OpenDialog1.FileName;
    try
      AssignFile(datei, dateiname);
      Reset(datei);
      while not EOF(datei) do
        begin
        Readln(datei, Puffer);
        StopIn := pos('</table>', Puffer) <> 0;
        Nimm:=(Nimm or StartIn) and (not StopIn);
        StartIn := pos('<table width=519>', Puffer) <> 0;
        if StartIn then
          begin
          start := pos('<table width=519>', Puffer) - 1;
          delete(Puffer, 1, start);
          Memo2.Lines.Add(Puffer);
          end;
        if StopIn then
          begin
          start := pos('</table>', Puffer) + 7;
          Memo2.Lines.Add(copy(Puffer,0,start));
          end;
        if Nimm then Memo2.Lines.Add(Puffer);
        Puffer:='';
        end;
      CloseFile(datei);
    except
      try
        CloseFile(datei);
      except
      end;
    end;
end;
die frage ist: können die beiden sachen die desucht werden in einer zeile vorkommen können...dann müsste mans noch etwas umbauen...
»Unlösbare Probleme sind in der Regel schwierig...«
  Mit Zitat antworten Zitat