Einzelnen Beitrag anzeigen

Benutzerbild von X-Dragon
X-Dragon

Registriert seit: 14. Jan 2003
Ort: Schortens
289 Beiträge
 
Delphi 6 Enterprise
 
#2

Re: Stringoperationen :: Performancemessung am bsp ANSI->

  Alt 5. Dez 2003, 20:06
Wow, so eine Abhandlung hatte ich nun nicht erwartet .

Ich hatte mich jetzt in meinem Programm erstmal für die "veraltete" Methode entschieden, da sie bisher am schnellsten war:
Delphi-Quellcode:
function ANSI2ASCII(AText:string):string;
const MaxLength = 255;
var PText : PChar;
begin
  PText:=StrAlloc(MaxLength);
  StrPCopy(PText,AText);
  {$IFDEF WIN32} 
  CharToOEM(PText,PText); {32Bit} 
  {$ELSE} 
  AnsiToOEM(PText,PText); {16Bit} 
  {$ENDIF} 
  Result:=StrPas(PText);
  StrDispose(PText);
end;
Und nach den letzten Messungen in meinem Programm, dauert die Umwandlung von:

ca. 230.000 Datensätze * 7 Felder * 12 Byte = 19.320.000 Byte ca. 1 Min 50 Sek.

Deine verbesserte Version kann ich jetzt leider erst am Montag testen. Wobei ich noch nicht genau weiß wie ich das man besten mache, denn die ausgelesen Daten wandel ich jetzt immer direkt um und schreibe sie gleich in die DB. Zuvor hab ich die Daten ja zuerst komplett ausgelesen und umgewandelt und dann erst in die DB geschrieben .

Und ich muss jetzt nur noch das da:
http://www.delphipraxis.net/internal...ct.php?t=14593
... in den Griff bekommen denn das unterbringen der 230.000 Datensätze an sich benötigt doch verhältnismäßig etwas mehr Zeit .
  Mit Zitat antworten Zitat