PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Dateiende write() Überschreiben



tomcom
18-12-2012, 15:25
Hallo,

ich habe ein Programm, das per write()-Dateien überschreibt.
Aber wie kann ich ein Dateiendesymbol/signal/marker schreiben?
Beispiel:


write(...,"Das Schaf schläft auf der Weide.",...);
// wird überschrieben mit:
write(...,"Die Katze kratzt!",..);

in der Datei steht statt die Katze kratzt! folgendes: Die Katze kratzt! auf der Weide.

Gruß,
Tom

anda_skoa
18-12-2012, 16:02
Wenn du die Datei mir O_TRUNC als Flag öffnest, wird sie auf 0 Bytes verkleinert und dein write() schreibt dann so weit wie es muss.

Du kannst alternative nach dem write die Position abfragen und die Datei an dieser Stelle abschneiden. Die Funktion dazu heißt truncate.

Ciao,
_