Moin!
open (FILE, ">>$variable");
Durch diesen Befehl wird die Datei, die sich hinter $variable verbirgt, zum Lesen und Schreiben geöffnet. Beim Schreiben wird der bisherige Dateiinhalt beibehalten und neuer Inhalt an das Ende der Datei angehängt. Nun will ich aber, dass der neueste Inhalt immer an den Anfang der Datei geschrieben wird.
Wie kann ich das machen?
Neue, temporäre Datei öffnen, den Anfang schreiben, dann die alte Datei öffnen, auslesen und hinter den Anfang in die neue Datei schreiben. Alle Dateien schließen, die alte Datei löschen und die temporäre Datei umbenennen.
Wahlweise die alte Datei komplett in den Speicher einlesen (Array), dort entsprechend bearbeiten (etwas vorn anfügen) und dann wieder auf Platte schreiben.
- Sven Rautenberg