Hallo,
Ich verstehe nicht, warum Du es so kompliziert machst.
Ich würde entweder Datei A komplett in den Speicher lesen, und dann den Speciherinhalt wieder zruück in die Datei schreiben. Das geht natürlich nur , wenn Die Datei nicht wirklich groß ist.
Oder Du öffnest die erste lesend, die zwiete schreibend, überträgst die Daten also von A nach B. Und wenn Du fertig bist, löscht Du a und benennst b auf a um.
In beiden Fällen ersparst Du Dir den zweiten lese/schreib-Vorgang.
fürs löschen siehe bitte
perldoc -f unlink
fürs umbenennen
perldoc -f rename
Meine Frage nun: gibt es eine Variable oder eine Funktion von der ich einen Wert bekomme, der mier sagt, wieviele Bytes ich am Stück in eine Datei (in diesem Fall Datei B) geschrieben habe!?
Die Funktion heißt stat. oder Du verwendest -s:
$filesize = -s HANDLE_TO_FILE_B;
Du kannst auch nach dem schreiben aller Daten nach B mit tell() die aktuelle Position im File abfragen.
Aber, wie gesagt, ich würde es nicht so kompliziert machen.
Grüße
Klaus