Doppelte MP3s finden



  • Hallo

    Ich bin daran mit ein Programm zu schreiben welches doppelte MP3s (natürlich nur eins davon) in einem Ordner & allen Unterordnern löscht.

    Jetzt stellt sich mir aber die Frage wie ich am besten und schnellsten überprüfe ob es sich um das gleiche File handelt.

    Ich habe mir gedacht zuerst den Dateinamen zu überprüfen. Wenn das genau der gleiche ist wird eins von denen gelöscht.
    Wenn nur ein Teil davon identisch ist (Trunxx - Song.mp3 / Trunxx - Song (1).mp3) wird zusätzlich noch die Grösse überprüft. Stimmt die exakt überein wird auch da eines gelöscht.
    Stimmt die Grösse nicht genau wird das in einer Liste gespeichert, von der der User dann selber auswählen kann ob eines gelöscht werden soll, oder auch nicht.

    Da diese Überprüfung meiner Meinung nach ziemlich Fehleranfällig ist - bei vielen MP3s zumindest - frage ich ob einer von euch einen besseren Vorschlag hat.

    Und wie überprüfe ich das ganze? Nehm ich einfach das erste MP3 File und prüfe alle restlichen. Dann nehme ich das zweite und überprüfe wieder alle usw.

    Grüsse,
    Trunxx



  • Also ich würde von jedem MP3 mit einem möglichst schnellen Algo ein Hash erstellen. Danach alle Hashes vergleichen, wenn herauskommt, dass es ein doppeltes MP3 gibt, noch alles Bitweise vergleichen.

    Der Hash Algorithmus muss einfach möglichst schnell sein, eine 100% eindeutige zuuordnung wird ja nicht gebraucht...



  • Wie kann ich eine Bitweise überprüfung durchführen?



  • Wende doch zur Bitweisen Überprüfung auf beide eine XOR-Verknüpfung an. Wenn 0 rauskommt dann sind alle Bits gleich und ein File kann gelöscht werden.

    Code-Hacker


Anmelden zum Antworten