I see. However, I still do not understand two things: 1. Why does it work if I read and write to the file system?
f := FileSystem disk workingDirectory / 'pharoicon.png'. f writeStreamDo: [ :stream | PNGReadWriter putForm: ThemeIcons current pharoIcon onStream: stream ]. f readStreamDo: [ :stream | PNGReadWriter formFromStream: stream binary ] 2. Why is binaryReadStreamDo: not equivalent to: f := FileSystem memory workingDirectory / 'pharoicon.png'. f writeStreamDo: [ :stream | PNGReadWriter putForm: ThemeIcons current pharoIcon onStream: stream ]. f *readStreamDo:* [ :stream | PNGReadWriter formFromStream: stream *binary*] Cheers, Doru On Sun, Feb 2, 2014 at 11:23 PM, Sven Van Caekenberghe <s...@stfx.eu> wrote: > > On 02 Feb 2014, at 22:13, Tudor Girba <tu...@tudorgirba.com> wrote: > > > Thanks! That worked. > > > > What is the difference? > > It's a complicated story ;-) > > > https://pharo.fogbugz.com/f/cases/12259/FileSystem-memory-reads-writes-using-a-binary-stream-by-default > > > Doru > > > > > > > > > > On Sun, Feb 2, 2014 at 9:19 PM, Sven Van Caekenberghe <s...@stfx.eu> > wrote: > > Doru, > > > > I think you will need the new #binaryReadStream or #binaryReadStreamDo: > > > > Sven > > > > On 02 Feb 2014, at 20:15, Tudor Girba <tu...@tudorgirba.com> wrote: > > > > > Hi, > > > > > > I have troubles creating a PNG file in memory. > > > > > > I can create a PNG file on disk and load it back without problems: > > > f := FileSystem disk workingDirectory / 'pharoicon.png'. > > > f writeStreamDo: [ :stream | > > > PNGReadWriter > > > putForm: ThemeIcons current pharoIcon > > > onStream: stream ]. > > > f readStreamDo: [ :stream | PNGReadWriter formFromStream: stream > binary ] > > > > > > But, when I try the same thing in memory, I get an exception for > incorrect format: > > > f := FileSystem memory workingDirectory / 'pharoicon.png'. > > > f writeStreamDo: [ :stream | > > > PNGReadWriter > > > putForm: ThemeIcons current pharoIcon > > > onStream: stream ]. > > > f readStreamDo: [ :stream | PNGReadWriter formFromStream: stream > binary ] > > > > > > Can anyone point me to what am I doing wrong? > > > > > > Doru > > > > > > > > > -- > > > www.tudorgirba.com > > > > > > "Every thing has its own flow" > > > > > > > > > > > > -- > > www.tudorgirba.com > > > > "Every thing has its own flow" > > > -- www.tudorgirba.com "Every thing has its own flow"