dateizeiger auf position setzen und dort schreiben/über...
backbone
- php
0 Axel Richter0 backbone
moin,
mein problem ist so simpel wie schwer (zumindest für meine
wenigkeit).
ich hab eine datei mit vielen einsen und nullen. nun will ich an
position 9 (sprich am 9ten byte) die null löschen und dafür eine 1
einfügen. ich habe mit fseek schon soviel rumporbiert aber der setzt
einfach den dateizeiger nicht an meine gewünschte position bzw.
fputs schreibt nicht dahin wo ich das will. hier mal der quelltext:
<?php
fseek(fopen("ldata.txt","a"),9);
fputs(fopen("ldata.txt","a"),"1");
?>
was mache ich hier falsch? könnt ihr mir das mal bitte sagen und zeigen wie mans richtig angeht?
schonmal danke im voraus.
tschau
Hallo,
was mache ich hier falsch? könnt ihr mir das mal bitte sagen und zeigen wie mans richtig angeht?
<?php
fseek(fopen("ldata.txt","a"),9);
Das setzt den Dateizeiger der Datei, auf die ein Handle zeigt, welches von fopen("ldata.txt","a") zurück gegeben wird, auf 9 Byte vom Beginn.
fputs(fopen("ldata.txt","a"),"1");
Das schreibt eine "1" an das Ende der Datei "ldata.txt", weil der Handle, der von fopen("ldata.txt","a") zurückgegeben wird auf das Dateiende zeigt.
So ist der Algorithmus:
viele Grüße
Axel
moin!
So ist der Algorithmus:
- Dateihandle für "ldata.txt" zum Schreiben öffnen
- _diesen_ Dateihandle positionieren
- Daten an die Position _dieses_ Dateihandles schreiben
- Dateihandle schließen
besten dank. das wollte ich nur wissen. *wieder ein stück schlauer ist*
tschau