ERLEDIGT
NEIN
NEIN
ANTWORTEN
9
9
ZUGRIFFE
296
296
EMPFEHLEN
-
Hallo zusammen,
ich hab da mal eine Frage. Ich hab eine Datei, die aus mehreren Zeilen besteht, wie kann ich eine bestimmte Zeile ersetzen.
Grüße July
-
09.08.11 17:21 #2
Ich habe es mal so gemacht, eine Schleife, und pro schleifen durchlauf ein zeile weiter gehen.
dann mit seek und tellg (hieß es glaub ich) die Bytes zählen und die gezählten bytes mit den neuen ersetzen
Hoffe das ich mich nicht vertan habe wenn doch einfach verbesser
Habe das schon lange nicht mehr gemacht
MFGFehlermeldung bitte!
Google - Dein Freund und Helfer
-
09.08.11 17:33 #3
Du könntest zuerst alle Zeilen in ein Array laden (aber nicht unbedingt nötig) und dann deine Zeile ersetzen.
@MSVC++
Dann müsste man aber die Länge der einzelnen Zeilen wissen, oder?
Bei "meiner" Variante muss das die Datei einfach anhand der Newlines (\r, \n, \r\n) splitten.
mfg ComFreek
Falls ich dir geholfen habe, würde ich mich über ein DANKE freuen!
Kenn mich am besten aus in C++, WEB-Sprachen (PHP, HTML, JavaScript) und vllt. mehr
[PHP] Überprüfen, ob Website erreichbar • Sicherheit in PHP-Codes schaffen • Google Chrome-Extension für tutorials.de • json_compress()
-
Das Problem ist, dass ich nicht den Inhalt auslesen möchte um neu zuschreiben, sondern direkt in der Datei die Zeile überschreiben.
-
09.08.11 18:26 #5Mavinas Tutorials.de Gastzugang
Hi,
bin selbst noch in den Anfängen, aber wie ist denn die "bestimmte" Zeile gekennzeichnet?
Durch ein bestimmtes Wort z.B.?
Dann könnte man doch die Datei mit strchr nach diesem durchsuchen und an der Stelle mit Hilfe einer if-Bedingung weiterarbeiten, oder?
Wenn es nach Zeilen geht, halt einen Zähler mitlaufen lassen und dann eben Zeile xy ersetzen.
So würde ich mir das vorstellen, naja, wie gesagt, bin noch Anfänger.
-
Also ich kenn die Zeile, die ich ersetzen möchte (z.B. 5. Zeile möchte ich neu beschreiben). Mein Problem ist, dass ich nicht weiß wie ich zu einer bestimmten Zeile ankomme um sie zu ersetzen
-
Hallo,
Du kannst einfach zeichenweise auslesen und die '\n' zählen. Wenn du z.B.: mit fgetc ließt steht dann der Filepointer schon an der richtigen Stelle.
-
Hi
Ersetzen in Dateien ist sowieso nicht gerade möglich...
Sobald die neue Zeile eine andere Länge als die alte hat kannst du die Datei gleich neu schreiben.
Gruß
-
10.08.11 14:13 #9
@ComFreek Diel länge der einzelnen Zeilen könnte man auch einfach in bytes auslesen dann hat man ja auch zeichen und zeilen länge, oder?
MFGFehlermeldung bitte!
Google - Dein Freund und Helfer
-
10.08.11 19:05 #10mfg ComFreek
Falls ich dir geholfen habe, würde ich mich über ein DANKE freuen!
Kenn mich am besten aus in C++, WEB-Sprachen (PHP, HTML, JavaScript) und vllt. mehr
[PHP] Überprüfen, ob Website erreichbar • Sicherheit in PHP-Codes schaffen • Google Chrome-Extension für tutorials.de • json_compress()
Ähnliche Themen
-
problem/frage zu dateimanipulation
Von RDK im Forum PHPAntworten: 2Letzter Beitrag: 10.03.02, 17:28





Zitieren


Login






