Thema: Delphi csv Datei bearbeiten

Einzelnen Beitrag anzeigen

Benutzerbild von ascotlx
ascotlx

Registriert seit: 8. Mär 2005
Ort: Hamburg
97 Beiträge
 
Delphi 7 Professional
 
#4

Re: csv Datei bearbeiten

  Alt 7. Nov 2005, 10:31
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
  Mit Zitat antworten Zitat