du bist auch wenn #0 vorkommt faktisch am Ende des Streams .... es wird nur nicht mehr dargestellt
Das mit der #0 ist kein Bug, sondern Absicht (ein Feature), wegen Kompatibilität zum PChar.
Ein Delphi-String abeitet über eine Längenangabe und nicht über eine Endemarkierung.
Der einzige "Bug" ist, daß man nach dem Laden, über Add in eine TStringList Strings mit #0 einfügen kann.
Andere Stringlisten, wie z.B. die vom Memo (Lines) arbeiten dagegen anders und beachten indirekt die #0.