Einzelnen Beitrag anzeigen

Hawkeye219

Registriert seit: 18. Feb 2006
Ort: Stolberg
2.227 Beiträge
 
Delphi 2010 Professional
 
#25

Re: 80 MB Datei - doppelte Zeilen entfernen

  Alt 17. Jan 2007, 22:21
Moin Christian,

du ignorierst in beiden Varianten die letzte Zeile der Eingabedatei. Das Ergebnis der ersten Variante ist sicher auch nicht das gewünschte.

Korrektur der Variante 1:
Delphi-Quellcode:
[...]
try
// Readln(fIn,sLine); // entfernt
  while not Eof(fIN) do begin
    Readln(fIn,sLine); // neu
    sMD5 := MD5Print(MD5String(sLine));
    if sl.IndexOf(sMD5) = -1 then begin
      sl.Add(sMD5);
      Writeln(fOUT, sLine); // korrigiert
    end;
// Readln(fIN,sLine); // entfernt
  end;
finally
[...]
Korrektur der Variante 2:
Delphi-Quellcode:
[...]
try
// Readln(fIn,sLine); // entfernt
  while not Eof(fIN) do begin
    Readln(fIn,sLine); // neu
    slOut.Add(sLine);
// Readln(fIN,sLine); // entfernt
  end;
finally
[...]
Gruß Hawkeye
  Mit Zitat antworten Zitat