Doppelte Einträge löschen (.txt)

  • Hallo, wie kann ich ein Script machen, dass automatisch doppelte Einträge aus einer Text datei löscht? Ich will das das Script doppelte Proxys aus einer Liste löscht...

    Danke

    lg

  • Folgende Befehle sollten dir helfen:
    _filereadtoarray (damit liest du die proxy date in ein array)
    _filewritefromarray (damit du die guten ips irgendwo speicherst)
    Stringinstr (damit schaust du ob sich irgendwelche strings gleichen)

    wenn du es nicht selbst lösen willst, sag bescheid dann bastel ich ein beispiel zusammen

  • Du meinst bestimmt "doppelte Zeilen", oder ?

    Doppelter Text = doppelte "a", doppelte "b"

    Damit blieben alle Buchstaben nur einmal in deiner Datei !

    Ansonsten:
    - Zeile aus Eingabe lesen (FileOpen,FileReadLine,FileClose)
    - Ist Zeile nicht in Ausgabe (StringInStr)
    - dann Zeile nach Ausgabe ($out &= $zeile & @CRLF)
    - wiederhole bis Ende Eingangsdatei (Do, Until)
    - ggf. Ausgabe in Datei (FileOpen,FileWrite,FileClose)


    Und nun probier einmal...

    Zur Nutzung dieses Forum's, ist ein Übersetzer für folgende Begriffe unerlässlich:

    "On-Bort, weier, verscheiden, schädliges, Butten steyling, näckstet, Parr, Porblem, scripe, Kompletenz, harken, manuel zu extramieren, geckukt, würglich, excell, acces oder Compilevorgeng"

  • Hallo petry94,

    poste doch mal, was Du bisher versucht hast.
    Komplett für Dich schreiben wird das wohl niemand hier.

    MfG Schnuffel

    "Sarkasmus ist die niedrigste Form des Witzes, aber die höchste Form der Intelligenz."
    Val McDermid

    ein paar Infos ...

    Wer mehr als "nur" Hilfe benötigt, kann sich gern im Forum "Programmieranfragen" an uns wenden. Wir helfen in allen Fällen, die die Forenregeln zulassen.

    Für schnelle Hilfe benötigen wir ein ! lauffähiges ! Script, dass wir als Demonstration des Problems testen können. Wer von uns erwartet ein Teilscript erstmal lauffähig zu bekommen, der hat
    1. keine wirkliche Not
    2. keinen Respekt vor Menschen die ihm in ihrer Freizeit Ihre Hilfe anbieten
    3. oder ist einfach nur faul und meint wir coden das für ihn

    In solchen Fällen erlaube ich mir, die Anfrage einfach zu ignorieren. ;)

  • Also bei doppelten Zeileneinträgen sollte es auch mit dieser Minimallösung gehen.

    Spoiler anzeigen
    [autoit]

    #include <array.au3>
    #Include <File.au3>

    [/autoit] [autoit][/autoit] [autoit]

    Dim $sFilePath = "foo.txt"
    Dim $aContent
    _FileReadToArray($sFilePath, $aContent)
    ;~ _ArrayDisplay($aContent)
    $aNewArray = _ArrayUnique($aContent)
    ;~ _ArrayDisplay($aNewArray)
    $hFile = FileOpen($sFilePath, 2)
    _FileWriteFromArray($hFile, $aNewArray , 1)
    FileClose($hFile)

    [/autoit]


    EDIT: Trotzdem cooles Skript BugFix :)
    EDIT2:Puh Sonntag Morgen :) Skript verbessert...
    EDIT3:So letzter Edit hoffentlich...

    2 Mal editiert, zuletzt von prizma (22. März 2009 um 17:10)