So hier meinte ich, nur grob hier hin gekritzelt, ich hoffe das klappt.
Delphi-Quellcode:
Function MyFilter ( inStream: TStream ): AnsiString;
var
xBuf: TBytes;
i : Integer;
begin
try
SetLength(xBuf, inStream.Size); // puffer größe bestimmen
inStream.ReadBuffer(Pointer(xBuf)^, Length(xBuf)); // puffer füllen
for I := 0 to Length(xBuf) -1 do
if xBuf[i] = 0 then xBuf[i] := 20; // mache aus 0 ein Leerzeichen
finally
SetLength(Result, Length(xBuf)); // ausgabegröße
for I := 0 to Length(xBuf) -1 do
Result[i+1] := AnsiChar(xBuf[i]); // alles aus puffer ins Result
end;
end;