![]() |
datei "verändern"...
Hi,
ich versuche, ne zeile in nem file hinzuzufügen, allerdings ersetzt er den ganzen text des files :( ... woran könnte es liegen? code:
Delphi-Quellcode:
cYa and ThX
var a: string;
d: textfile; //----------------- a:='test'; AssignFile(d, Edit2.Text); Rewrite(d); writeln(d, a); closefile(d); Leathl |
Re: datei "verändern"...
Hallo,
hinzufügen kannst Du mit "Append", bei ReWrite wird die Datei an sich neu angelegt, bzw. der ganze Inhalt gelöscht und dann neu beschrieben. Grüsse, Daniel :hi: |
Re: datei "verändern"...
Ich würde einfach alles auslesen und zb in ein Array zwischenspeichern und dann einfach die gewünschte Zeile hinzufügen und dann wieder alles (also den kompletten) Array wieder in die Datei speichern.
So hast du das Problem umgehen können. Hatte das Problem auch schon mal Es gibt aber glaube ich auch noch ein Befehl, REwrite ist glaube ich falsch... [edit]mist Daniel war wieder schneller...Append war es stimmt...[/edit] |
Re: datei "verändern"...
Hi,
also mit append hab ichs auch versucht, da hat er die zeile nicht hinzugefügt :( ... das file was so wie vorher... mit ner stringlist hab ichs auch schon versucht, aber da funktioniert was nicht... er hat immer die letzte und die hälfte der vorletzteb zeile gelöscht... :( Leathl |
Re: datei "verändern"...
Also wenn du obigen Code nimmst und Rewrite durch Append ersetzt, wird was in die Datei geschrieben, es sei denn a ist leer. Oder der Datenträger ist voll :wink:
|
Re: datei "verändern"...
hallo
du musst rewrite() durch Reset() ersetzen. dann sollte das ganze funktionieren. |
Re: datei "verändern"...
Zitat:
|
Re: datei "verändern"...
hmm... also bei mir funkts nicht :(...
ich versuchs morgen nochmal alles durch... |
Re: datei "verändern"...
Zeig mal deinen Source.
Und was genau "funktioniert nicht"? |
Re: datei "verändern"...
naja... hab ich doch oben geschirieben...
Delphi-Quellcode:
also...
a:='test';
AssignFile(d, Edit2.Text); append(d); writeln(d, a); closefile(d); Wenn ich nen File hab, wo dann irgendwas drin steht und den code da mache, dann steht danach im file genau dasselbe... :( |
Re: datei "verändern"...
Gegenbeweis:
Delphi-Quellcode:
var
f : TextFile; begin AssignFile(f, 'c:\test.txt'); Append(f); writeln(f, 'World'); CloseFile(f); |
Re: datei "verändern"...
Und wenn ich das mache, steht in der Datei nicht dasselbe, sondern "test" und ein Zeilenumbruch mehr.
Keine Ahnung, was du da machst, dein Code ist richtig. |
Re: datei "verändern"...
nim doch einfach ne tstringlist da sind die ganze routinen schon implementiert
Delphi-Quellcode:
var list:tstringlist;
begin list:=tstringlist.create; list.loadfromfile('c:\test.txt'); list.add('Füge was hinzu'); list[3]:='Ändere die 4-te zeile'; list.savetofile('c:\test.txt'); list.free; end; mfg Blizzard [edit]dumme tippfehler[/edit] |
Re: datei "verändern"...
Wo ist der Ressourcenschutzblock (try-finaly)? :roll:
|
Re: datei "verändern"...
Zitat:
Zitat:
//also ich benutze das immer bei crypted files... bei ner normalen txt klappts... hmm :( |
Re: datei "verändern"...
habs geschafft :)
thx an alle :D :dancer: :dancer2: :dancer: :dancer2: :dancer: :dancer2: |
Re: datei "verändern"...
Ein Moment: "crypted files"? Solche Dateien sind wohl wie binär Dateien zu handhaben, da sie auch Steuerzeichen usw. enthalten können. Da kann das nicht funktionieren.
|
Re: datei "verändern"...
ne tstringlist frist meiner erfahrung nach alles bis auf den hexwert 00 da bricht sie ab weil sie beim einlesen wohl mit nem 0-terminierten string arbeitet und da 0x00 als stringende gilt
wobei ich bei "crypted files" doch auch eher mit nem filestream arbeiten würde Blizzard |
Re: datei "verändern"...
ja...
ich habs auch im letzten moment bemerkt und mich besonnen, es anders zu machen *G* ... klappt ja jetzt :D cYa Leathl |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:31 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz