n-te Zeile in textdatei löschen !

PatrickD

Mitglied
Hallo Gemeinde,

hab mal wieder ne Frage !

Wie kann ich denn aus einer Textdatei eine bestimmte Zeile
löschen ?

Bsp.:

1. Zeile ist hier
2. Zeile ist hier <- nur die hier soll gelöscht werden.
3. Zeile ist hier

Die 3. Zeile soll in diesem Beispiel an die Stelle der 2. Zeile verschoben werden.

Gruß
Paddy
:(
 
einen einfachen Befehl gibts dafür meines Wissens net.

Probiers mal so:

mit $array=file("datei.dat"); liest Du die Datei ein, und zwar ist dann jede Zeile genau ein Feld des arrays. Dieses Array gehst Du dann Zeile für Zeile durch und schreibst die Daten zurück in die Datei, nur eben die nicht, die Du löschen willst.

hilft das?


Dunsti
 
mal so eine Frage,
koennte es was helfen,
die Zeile in dem array einfach zu eliminieren?
PHP:
$fcontent = file('datei.txt');
unset($fcontent[2]);
// for windows use "\r\n"
$fcontent_single_line = join("\n",$fcontent);
$fp = fopen('datei.txt','w')
fwrite($fp,$fcontent_single_line);
fclose($fp);
Damit duerfte es gehen,
und ist auch nicht so viel Code, oder?
 
naja, wenn man das Array in einer Schleife wieder in die Datei zurückschreibt, und eine IF-Abfrage dann die zu löschende Zeile rausfiltert ist das sicher auch net viel mehr ;)
Ausserdem könnte es sein (bin net sicher), daß bei Deiner Lösung ne Leerzeile an der Stelle bleibt ;)


Dunsti
 
Habe es gerade getestet,
da bleib keine Leerzeile.
Der Grund ist das der Key beim Array nicht mehr existiert.
 

Neue Beiträge

Zurück