On 29 Feb 2016, at 20:27, Udo Schneider <udo.schneider@homeaddress.de> wrote:
All,
is there any reason why MemoryFileSystemFile>>#readStream forces it's content to a String (#aString)?
readStream ^ ReadStream on: self bytes asString from: 1 to: size
I'm parsing XML files from an in-memory ZIP Archive and had some real problem with non-ASCII characters. Took me some while to figure out reading from the in-memory-archive returns a String. This prevents the XML Parser from doing a PI based decoding (utf-8 in this case).
I think it is not good to do this, better stick with bytes. Primitive streams should be binary only, interpreting them as characters is easily done wrapping a ZnCharacter[Read|Write]Stream on them. But this whole situation is a mess.
Just as a sidenote: Although the GT-Spotter/XML Integration relies on FileReference it assumes that the file is in the DiskFilesystem (some methods only pass a Path). Is this intentional? If not I'd try to fix it on the run.
Thanks,
Udo