Zitat von
-Lucky-:
Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
var text1,text2: string;
i: integer;
begin
ShowMessage('Messung starten');
for i := 1 to 50 do
begin
text1 := FileToString('abc.xyz'); // datei hat nix zu sagen, dient als temp. Datenquelle
text2 := copy(text1,20000,500000) + copy(text1,1,19999) + copy(text1,500001,length(text1));
end;
ShowMessage('Fertig');
end;
Abgesehen von Deinem Performanzproblem: Kann es sein, dass Du den dritten Parameter von Copy() nicht richtig verwendest? Dieser gibt die Länge des zu kopierenden Bereichs an. Ich habe den Eindruck, dass Du ihn aber für die Position des letzten Zeichen hältst, so dass der Bereich vom 500001. bis zum 519999. Zeichen doppelt im Zielstring landet . Richtig wäre meines Erachtens:
text2 := copy(text1,20000,500000 - 19999) + copy(text1,1,19999) + copy(text1,500001,length(text1) - 500000);
jkr