Eine bestimmte Zeile in einer *.txt Datei bearbeiten und speichern !?

digiTAL

Erfahrenes Mitglied
Alooaa,

Ich habe eine TXT Datei wo ich Daten gespeichert habe, diese hat zum Beispiel 24 Zeilen. Wie kann ich die 16. Zeile bearbeiten, also den alten Text in der Zeile löschen und einen neuen einfügen und wieder speichern ohne das die restlichen Daten in der *.txt verloren gehen.

Weiß jemand wie man sowas bewerkstelligt !?

mfg digiTALE


edit: Das ganze will ich per PHP realisieren
 
Zuletzt bearbeitet:
per [phpf]file[/phpf] erhältst du eine Datei zeilenweise als Array.
Ändere das Element mit dem Index #15 und speichere das Ganze, nachdem du es anhand des Zeilenumbruches implodet hast, wieder in der Datei.
 
Hmm, versteh ich jetzt nicht wo ich da was mit Index # 15 ändern soll. Bin in Sachen PHP noch ein totaler Anfänger!

Hab mir das durchgelesen und das ist das auch wa ich brauche aber verändern könnte ich das nicht wirklich.

mfg digiTALE
 
Also ^^ hier ma ein beispielcode:
PHP:
function zeile_loschen($zeile)
{
$datei="./schlagmichtot/oda/nicht.txt";
$file=file($datei);   //jetzt ist jede zeile als array in $file
unset($file($zeile));
$fopen=fopen($datei,"w"); // hier wird jetzt wieda alles geschrieben ausser die gelöschte zeile 
foreach ($file as $wert)
{
fwrite($fopen,$wert);
}
fclose($fopen);
return true;
}

/*
Coded by a PHP newbie ;)


*/
 
wenn ich das angebe dann löscht der mir alles, aber wo muss ich was einsetzen das er mir nur die 16 Zeile löscht?

mfg digiTALE
 
Hallo,
das ist ganz einfach, hier mal ein Beispiel:
PHP:
<?php
function delete_line($file, $line, $change_in) {
	 $entries = file($file);
	 if(empty($change_in)) {
		 unset($entries[$line-1]);
	 } else {
		 $entries[$line-1] = $change_in;
	 }
	 $newentries = implode("", $entries);
	 $datei = fopen($file, "w");
	 fputs($datei, $newentries);
	 fclose($datei);
}
 
delete_line("test.txt", 16, "test"); //Zeile 16 in der Datei test.txt wird durch test ersetzt
delete_line("test.txt", 16, ""); //Zeile 16 in der Datei test.txt wird gelöscht.
?>

mfg
forsterm
 
Zuletzt bearbeitet:
Hallo auch ich habe den Beitrag gelesen weil ich genau diese Funktion gesucht habe,
nun hab ich das Problem das ich eine systemdatei bearbeiten möchte und ich nicht die rechte als php user habe wie bekomme ich root, sicherheit ist nicht wichtig ist en offline server...

thx ronaldl
 
Zurück