Thema: Delphi replace(all) ?

Einzelnen Beitrag anzeigen

civilcrucher

Registriert seit: 10. Nov 2003
Ort: Berlin
5 Beiträge
 
Delphi 6 Professional
 
#1

replace(all) ?

  Alt 10. Nov 2003, 20:47
Ich grüße Euch!

Ich habe folgendes Problem:

Ich möchte Temperaturen aus einer Datei in ein Memofeld laden. Diese Daten muss ich dann Formatieren, so das die Werte untereinander und nicht Hintereinander stehen.

Delphi-Quellcode:
vorher

"Meßprotokoll AD-USB 4"
"Seriennummer 4"
"Beginn 10.11.2003 13:45:34"
" "
"Nr;Datum Uhrzeit;AI0;AI1;AI2;AI3;AI4;AI5;AI6;AI7;DI0;DI1;DI2;DI3;DI4;DI5;DI6;DI7;"
"1;10.11.2003 13:45:35;-5,0719;-1,6563;-1,0885;-0,2155;-0,8426;-0,0774;-0,2419;0,0205;11111111;"
Delphi-Quellcode:
nachher

"Meßprotokoll AD-USB 4"
"Seriennummer 4"
"Beginn 10.11.2003 13:45:34"
" "
Nr
Datum Uhrzeit
AI0
AI1
AI2
AI3
.
.
.

Mit einem Zeichen ändern klappt das auch Prima. Nur Muss er hat viele Sachen ändern und ich wäre über ratschläge Dankbar. Habe mal das bisherige mal mit angehängt. Ich habe mir auch schon diesen stringreplace Befehl angeschaut, nur kapier ich den noch nicht so richtig. Komme nicht mit der Flag Einstellung klar.

Versucht es aber bitte nicht zu kompliziert zu machen, sonst steig ich nicht mehr hinterher. Bin schliesslich noch Angänger in Delphi

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
memo1.Lines.Clear;
memo1.Lines.LoadFromFile('werte\text.txt');

  with TReplaceDialog(Sender) do
    begin
      FindText:=';';
      ReplaceText:=#13#10;
      SelPos := Pos(FindText, Memo1.Lines.Text);
      if SelPos > 0 then
        begin
          Memo1.SelStart := SelPos - 1;
          Memo1.SelLength := Length(FindText);
          Memo1.SelText := ReplaceText;
        end
      else MessageDlg(Concat('Could not find "', FindText, '" in Memo1.'), mtError, [mbOk], 0);
    end;

end;
  Mit Zitat antworten Zitat