Hallo,
versuch's mal mit Filestreams, dürfte (vor allem bei größeren Dateien) schneller sein und die Änderungen sind marginal.
Für das zu "bearbeitende" Zeichen nimmst Du Byte, das geht auch mit Char, dann sparst Du die "Konvertierung".
Delphi-Quellcode:
Var
OneCharOfFile : Char;
begin
...
case OneCharOfFile of
// <
#60 : HtmlTag := True;
// >
#62 : HtmlTag := False;
end;
...
end;
Der weitere Teil könnte dann in der Form sein:
Delphi-Quellcode:
case OneCharOfFile of
'ä' : OUTPUT_FILE.Append('ä');
// #228 : OUTPUT_FILE.Append('ä');
'Ä' : OUTPUT_FILE.Append('Ä');
// #196 : OUTPUT_FILE.Append('Ä');
...