moin ,
danke für die Hilfe ...
falls es jedemanden interessiert, meine Lösung (bestimmt nicht schön .. funkioniert aber)
Ich arbeite nun mit einer Zwischendatei ...
Delphi-Quellcode:
procedure kddaten_schreiben(const Ergebnis: integer);
var
zeile, file_in, file_out: string;
begin
file_in:='c:\text.txt';
file_out:='c:\text2.txt';
if erg < 99 then // erg wird in einer anderen prozedur gesetzt
begin
// zwischendatei anlegen
AssignFile(mc_filename2, 'c:\mc_liz_kd2.txt');
{$I-}Rewrite(mc_filename2);{$I+}
if IOResult>0 then
ShowMessage('Fehler beim Anlegen der Zwischendatei');
// kunden daten datei öffnen
AssignFile(mc_filename, 'c:\mc_liz_kd.txt');
{$I-}Reset(mc_filename);{$I+}
if IOResult=0 then
// bis zum ende der datei zeileweise lesen
while not Eof(mc_filename) do
begin
Readln(mc_filename,zeile);
if Pos(hdl,zeile) <> 1 then
writeln(mc_filename2,zeile);
end;
// geänderte Zeile schreiben
writeln(mc_filename2,frm_liz_mgr.MaskEdit4.Text+';'+frm_liz_mgr.MaskEdit5.Text+';'+frm_liz_mgr.Edit6.Text+';'+frm_liz_mgr.Edit7.Text+';'+frm_liz_mgr.MaskEdit1.Text+';'+frm_liz_mgr.Edit8.Text+';'+frm_liz_mgr.Edit9.Text+';'+frm_liz_mgr.Edit10.Text+';'+Trim(frm_liz_mgr.MaskEdit2.Text)+';'+Trim(frm_liz_mgr.MaskEdit3.Text)+';');
CloseFile(mc_filename);
CloseFile(mc_filename2);
// Alte Datei löschen, Zwischendatei umkopieren
deleteFile(file_in);
RenameFile(file_out,file_in);
end;
// kunden daten datei öffnen
AssignFile(mc_filename, 'c:\mc_liz_kd.txt');
{$I-}Append(mc_filename);{$I+}
if IOResult=0 then
begin
if erg = 100 then
writeln(mc_filename,frm_liz_mgr.MaskEdit4.Text+';'+frm_liz_mgr.MaskEdit5.Text+';'+frm_liz_mgr.Edit6.Text+';'+frm_liz_mgr.Edit7.Text+';'+frm_liz_mgr.MaskEdit1.Text+';'+frm_liz_mgr.Edit8.Text+';'+frm_liz_mgr.Edit9.Text+';'+frm_liz_mgr.Edit10.Text+';'+Trim(frm_liz_mgr.MaskEdit2.Text)+';'+Trim(frm_liz_mgr.MaskEdit3.Text)+';');
end;
CloseFile(mc_filename);
end;
Gruss
ascotlx