Delphi-Quellcode:
const
BufferSize = 1024 * 8;
var
Count: array[char] of Cardinal;
Buffer: array of Char;
CharsRead,I: Integer;
begin
FillChar(Count, SizeOf(Count), 0);
SetLength(Buffer, BufferSize);
with TFileStream.Create('c:\datei.txt', fmOpenRead or fmShareDenyWrite) do
try
repeat
CharsRead := Read(Buffer[0], BufferSize);
if CharsRead <= 0 then Break;
for I := 0 to CharsRead -1 do
Inc(Count[Buffer[I]]);
until False;
finally
Free;
end;
end;
In Count[] findest du dann die Anzhal der Zeichen im File. Mit zb. Count['0'] fragst du die Anzahl für '0' ab.
Gruß hagen
PS: nichts mit unsauberen TypCast's stattdessen saubere Typdeklarationen, nichts mit langsammen String Konvertierungen