Habe das bei mir mit 90 MB getestet, dauerte etwa zwei Sekunden. Aber das war 'ne SSD. Mach mal die Ticks nur um meine Methode. Die sollte deutlich unter einer Sekunde brauchen, gerade für nur 17 MB.
nur um Deine Methode? Hab ich das nicht?
Der Sprung in die Function sollte doch nicht so lange brauchen, oder? höchtens 3 CPU Takte.
oder wo genau meinst Du?
und an einer HDD (vs. SSD) sollte das doch auch nicht liegen.
Die hat immerhin schon 1 TB und ist erst 4 Jahre alt.
Wieviel Umdrehungen hat die? 5000/s?
ist ja komisch.
Also ich verwende nur meinen Code hier (repost
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
Input, Output: TMemoryStream;
STRI, FN: string;
gt, gt2: Longword;
diff: integer;
begin
Input := TMemoryStream.Create;
Output := TMemoryStream.Create;
try
FN := '.\neu.txt';
gt := gettickcount;
Input.LoadFromFile(FN);
Base64EncodeStream(Input, Output);
Output.SaveToFile(FN + 'b64');
gt2 := gettickcount;
diff := gt2 - gt;
// diff := diff * 1000;
memo1.Text := inttostr(diff);
finally
Input.Free;
Output.Free;
end;
end;
das ganze Projekt hab ich mal hier raufgeladen.
dazu auf Zippy eine ca. 1o MB Binary.
http://www92.zippyshare.com/v/JVjY2Swk/file.html