猿问

stream的问题

 //string s = Response.ContentEncoding;     

           //Stream resStream = Response.GetResponseStream();      

          //StreamReader sR = new StreamReader(resStream, Encoding.UTF8);       

         //string TML = sR.ReadToEnd();           

     //StreamReader sr = new StreamReader(resStream, Encoding.Default);          

      //string HTML = sr.ReadToEnd();

为什么TML有值,而HTML就是空的呢?一个Stream只能使用一次?不应该啊,为什么为什么。。。。。。


哈士奇WWW
浏览 394回答 2
2回答

慕仙森

Stream是只读向前的,因此sR.ReadToEnd()后,resStream的读取位置就移动到了流尾,这时候再读流,就没有数据了.你可以使用MemoryStream接收ResponseStream中的内容,然后你可以反复使用MemoryStream,注意每次要重新读取MemoryStream的时候,都需要调用MemoryStream的Seek(0,SeekOrign.Begin);

鸿蒙传说

Stream resStream1 = resStream; 获取你再申明一个
随时随地看视频慕课网APP
我要回答