Einzelnen Beitrag anzeigen

hukopush

Registriert seit: 24. Mär 2004
Ort: Lohmar
5 Beiträge
 
Delphi 7 Professional
 
#1

double Werte aus Strings lesen

  Alt 24. Mär 2004, 14:06
Hallo Forum,
ich habe schon des öfteren in euren Beiträgen rumgestöbert.
Da ich jetzt ein problem habe, bei dem ich selber keine Idee mehr habe, wende ich mich Hilfesuchend an euch!!

Mei Problem ist eigentlich nur ein Geschwindigkeitsproblem und zwar lese ich aus einem Ansistring der folgendermassen aufgebaut ist

1020,686 3566,704 3669,117 3520,530 541,853 1544,589 1789,372 1211,255 0,000 0,000 0,000 0,000 0,000 21,045 19,881 20,764 20,306 20,995 20,318 usw.


die Werte folgendermasen in ein Array ein.



Delphi-Quellcode:
var
  Hilf1 : Ansisring;
  aktPos : Longint;
for i := 1 to AktMesszahl - 1 do
begin
  while hilf1[aktpos] = ' do // alle Leerzeichen rausfiltern
    inc(aktpos);

  Hilf2 := '';
  while hilf1[aktpos] <> ' do
  begin
    Hilf2 := Hilf2 + hilf1[aktpos];
    inc(aktPos);
  end; (* while *)
  DatenArray[AktHeaderzahl-1,aktDatensatz-1,i] := StrToFloat(hilf2);
end; (* for *)

Da meine Dateien bis zu ca. 1000000 Zeilen obigen Typs(oder mehr Daten) bestehen, kann dies eine sehr Zeitaufwendige Procedure sein. (10000 Zeilen benötigen ca 22 Sekunden auf einem P4 1,8 Ghz)

Hat einer eine Idee wie ich dieses einlesen beschleunigen kann?

Bin für jede Anregung dankbar
Gruß
Heiko
  Mit Zitat antworten Zitat