[Mono-dev] Problem in Mono's implementation of System.IO.StreamReader?

Thiago Padilha tpadilha84 at gmail.com
Thu Jul 8 16:18:26 EDT 2010


 Neverming, it seems to be the correct behavior according to
http://msdn.microsoft.com/en-us/library/system.io.streamreader.readline.aspx

On Thu, Jul 8, 2010 at 4:22 PM, Thiago Padilha <tpadilha84 at gmail.com> wrote:
>  Hi,
>
>  I'm using StreamReader to read some text from a network stream that
> will contain a two part message : the first part(the one I'm reading)
> contains some headers in plain text, the second part may contain any
> kind of data.
>  It doesnt matter the data in the second part of the message, I
> intend to pass the underlying Stream to another code that will
> correctly deserialize it. The problem is that the StreamReader decodes
> a lot of text on my first call to ReadLine() (much more than one
> line). The result is that the NetworkStream advances more than it
> should, and I cant deserialize the second part of the message.
>  Is this intended behavior? I can easily work arround this by
> buffering the second part of the message and wrapping a MemoryStream
> arround it, but I'd rather pass the NetworkStream directly.
>  Also, sometimes I intend to close the network connection and discard
> the second part depending on the headers I find.(And since the reader
> will already have buffered it, the data will have to wait for garbage
> collection).
>
>  Thanks.
>


More information about the Mono-devel-list mailing list