Wirklich Memo.LoadFromFile(Datei);
und nicht Memo.Lines.LoadFromFile(Datei);
Hat da vielleicht jemand bei FastReport ein bissl "Mist" gebaut? (Fehlplanung)
(abgesehn davon, daß ein WideString nicht grade ein "optimales" Speichermanagement besitzt)
Zitat:
Delphi-Quellcode:
procedure TWideStrings.SaveToStream(Stream: TStream; Encoding: TEncoding);
var
Buffer, Preamble: TBytes;
begin
if Encoding = nil then
Encoding := TEncoding.Unicode; // The default encoding is UTF-16
FastReport nutzt TWideStrings und nicht TStrings.
TWideStrings verwendet per Default
Unicode und nicht
ANSI, so wie das TStrings.
Resultat: Der Code ist nicht kompatibel. (oder hatten sie die Dateien vor D2009 wirklich schon als UTF-16 gespeichert?)
Lösung:
Memo.LoadFromFile(Datei, TEncoding.Default);
[edit]
OMG, das Property "Memo" ist das "Lines" ... also intuitiv ist was Anderes