Doppelte Zeilen aus ner Textdatei löschen???
Timo
- php
Hallo Ihrs :)
ich habe ein ziemliches Problem... ich möchte doppelte Einträge aus einem Textfile löschen.... nun meine frage... wie?
Meine Idee ich öffne das file lese es in ein Array ein überprüfe ob die array einträge doppelt sind und schreibe die in ein neues file... aber das kommt mir sehr umständlich vor... gibt es was schnelleres?
Lieben Gruß
Timo
Lieber Timo,
ich habe ein ziemliches Problem... ich möchte doppelte Einträge aus einem Textfile löschen.... nun meine frage... wie?
Meine Idee ich öffne das file lese es in ein Array ein überprüfe ob die array einträge doppelt sind und schreibe die in ein neues file... aber das kommt mir sehr umständlich vor... gibt es was schnelleres?
nö
Liebe Grüße aus Ellwangen,
Felix Riesterer.
Hallo,
ich habe ein ziemliches Problem... ich möchte doppelte Einträge aus einem Textfile löschen.... nun meine frage... wie?
mit file(), array_unique(), implode() und Funktionen des Dateisystems.
Meine Idee ich öffne das file lese es in ein Array ein überprüfe ob die array einträge doppelt sind und schreibe die in ein neues file... aber das kommt mir sehr umständlich vor... gibt es was schnelleres?
Es bestünde beim Erstellen des Inhalts die Möglichkeit gleich auf doppelte Einsträge zu achten.
Gruß aus Berlin!
eddi
Hello,
Meine Idee ich öffne das file lese es in ein Array ein überprüfe ob die array einträge doppelt sind und schreibe die in ein neues file... aber das kommt mir sehr umständlich vor... gibt es was schnelleres?
Schneller wahrscheinlich nicht.
Kommt aber auf die Größe der Datei an, ob Du sie vollständig in den Speicher lesen kannst.
Sonst musst Du eben ein Zeile einlesen,
Dir die Zeile merken,
die Zeile wegschreiben in eine neue Datei,
-->
die nächste Zeile einlesen und vergleichen mit der gemerkten,
bei Unterschied wegschreiben,
Zeile merken,
usw. bis zum Ende.
<--
Harzliche Grüße vom Berg
http://www.annerschbarrich.de
Tom
hi,
die nächste Zeile einlesen und vergleichen mit der gemerkten,
bei Unterschied wegschreiben,
Das würde allerdings eine Sortierung voraussetzen, von der hier nicht bekannt ist, ob sie a) schon vorliegt, und b) überhaupt gewünscht ist.
gruß,
wahsaga
Hello,
die nächste Zeile einlesen und vergleichen mit der gemerkten,
bei Unterschied wegschreiben,Das würde allerdings eine Sortierung voraussetzen, von der hier nicht bekannt ist, ob sie a) schon vorliegt, und b) überhaupt gewünscht ist.
Irgendwie könntest Du da Recht haben :-)
Harzliche Grüße vom Berg
http://www.annerschbarrich.de
Tom
Danke für die schnellen antworten, ich löse es über das array... 8000 zeilen das klappt... langsam aber es klappt
Danke Euch :)
Hello,
die nächste Zeile einlesen und vergleichen mit der gemerkten,
bei Unterschied wegschreiben,Das würde allerdings eine Sortierung voraussetzen, von der hier nicht bekannt ist, ob sie a) schon vorliegt, und b) überhaupt gewünscht ist.
Irgendwie könntest Du da Recht haben :-)
Harzliche Grüße vom Berg
http://www.annerschbarrich.deTom
Moin!
Hallo Ihrs :)
ich habe ein ziemliches Problem... ich möchte doppelte Einträge aus einem Textfile löschen.... nun meine frage... wie?
Meine Idee ich öffne das file lese es in ein Array ein überprüfe ob die array einträge doppelt sind und schreibe die in ein neues file... aber das kommt mir sehr umständlich vor... gibt es was schnelleres?
Aber ja doch. sort kann das, ist aber kein PHP, sondern ein Programm.
Du bekommst es hier: http://gnuwin32.sourceforge.net/packages/textutils.htm
sort -u datei.alt > datei.neu ist dann der auszuführende Befehl.
Bei Linux ist es stets dabei... :)
MFFG (Mit freundlich- friedfertigem Grinsen)
fastix®