![]() |
AW: Stringlisten vergleichen
So, funktioniert anstandlos und zügig.
Aber warum geht mein Kunstwerk von oben nicht. Okay, mit IndexOf geht es nicht. Also dachte ich eben wenn ich frage, ob der String (also der Dateiname) in dem anderen String(s) enthalten ist oder nicht das er wenn nicht diesen String in die neue Liste schreibt. SackerlZement. creehawk |
AW: Stringlisten vergleichen
Ausgehend vom Code aus Post #1 und der Bemerkung , dass eine Liste den gesamten Pfad enthält. und die andere Liste nur die Dateinamen, sind in deiner CopyList ca. 9.6 Mio Zeilen. Ist dir das bewusst?
|
AW: Stringlisten vergleichen
Aha, 9.6 Mill Zeilen. Und das ist mir jetzt nicht bewusst.
Ich sage ja, da ist was faul. Und jetzt: WAS? creehawk |
AW: Stringlisten vergleichen
Da dein Vergleich *nie* stimmt, fügst du 3049 * 3293 Zeilen der CopyList hinzu.
|
AW: Stringlisten vergleichen
Versuche doch mal zum Test, deine Dateien so zu kürzen, damit du nur 2-3 Zeilen hast. Dann wirst du bestimmt sehen, was Jürgen meint.
|
AW: Stringlisten vergleichen
IndexOf und Find nutzen die interne Vergleichsmethode,
welche man natürlich auch überschreiben und somit ändern kann. ![]() z.B. mit einem ExtractFileName und bei canz vielen ADD könnte man vorher noch Capacity setzen. |
AW: Stringlisten vergleichen
Wie gesagt also, erste Post:
If AnsiPos(STR,DDSList.Strings[II]) = 0 dann aufschreiben Wenn der STR (also ein Dateiname) im aktuellen String der DDSList NICHT enthalten ist dann... Aja, natürlich. :( Das muss ich jetzt erstmal ventilieren. creehawk |
AW: Stringlisten vergleichen
So, kurzer Überschlag, jetzt habe ich das verstanden.
Bevor ich mich nun in mein Schwert stürze wegen verschärfter Begriffstutzigkeit :wall: möchte ich mich für die Hilfestellungen bedanken. Ade, du schnöde Programmierwelt. creehawk |
AW: Stringlisten vergleichen
Zitat:
Beim Laden einer Datei in eine TStringList braucht man vorübergehend bis zum 5-fachen der Dateigröße. Und das Doppelte bis Dreifache auch noch an einem Stück, was bei 32 Bit effektiv durchschnittlich nur bis zu 800MB sind. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:48 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz