Hallo,
habe hier ein kleines Problem mit den löschen in meinen .csv Dateien.
Ich habe 3 .csv Dateien
[autoit]$sFile1 = @ScriptDir & "\1.csv"
$sFile2 = @ScriptDir & "\2.csv"
$sFile3 = @ScriptDir & "\protokoll.csv"
Die Daten von File1 kommen aus einer Exceltabelle
Die Daten für File2 kommen aus File1
FileWrite($sFile2, FileRead($sFile1) & @CRLF & FileRead($sFile2))
[/autoit]
File2 wird über ein Listview geladen und es können einzelne Datensätze gelöscht werden.
Doch bevor diese gelöscht werden, kommen sie ins Protokoll (File3).
Da es häufig vorkommt, dass in der Exceltabelle noch Datensätze drinn sind die schon "durch File1 gelaufen" sind, bekommme ich dann natürlich die Datensätze wieder doppelt, was aber nicht gewollt ist.
Für die "doppler" habe ich schon hier im Forum was funktionierendes eingebaut.
Jetzt suche ich was um die Datensätze die im Protokoll(File3) stehen mit den aus File2 zu vergleichen und wenn gleiche Datensätze vorhanden, sollen diese komplett, also alle gelöscht werden im File2.
Mein Ansatzt ist bisher, dass ich das Protokoll(File3) mit:
[autoit]_FileReadToArray($sFile3, $aContent)
[/autoit]in ein Array packe,
Die Ausgabe mit:
_ArrayDisplay($aContent, 0)
[/autoit]
klappt auch, nur wie bekomme ich jetzt die Sachen die im Array sind, jetzt als Index für die Löschfunktion im File2.
Oder besser gefragt, die Sachen die im Protokoll(File3) stehen, sollen und dürfen nicht mehr im File2 sein weil die ja schon "abgehandelt" sind und das bekomme ich nicht hin.
Ich hoffe ich konnte mich irgendwie verständlich ausdrücken