C#重写Stream的时候为什么超过31744后会调用多次
//关键的点,在HttpResponse 输入内容的时候,一定会调用此方法输入数据,所以要在此方法内截获数据 public override void Write(byte[] buffer, int offset, int count) { string strBuffer = System.Text.UTF8Encoding.UTF8.GetString(buffer, offset, count); ////采用正则,检查输入的是否有页面结束符</string> //Regex eof = new Regex("</string>", RegexOptions.IgnoreCase); //if (!eof.IsMatch(strBuffer)) //{ // //页面没有输出完毕,继续追加内容 // responseHtml.Append(strBuffer); //} //else { //页面输出已经完毕,截获内容 responseHtml.Append(strBuffer); string finalHtml = responseHtml.ToString(); //激发数据已经获取事件 OnRawDataRecordedEvent(this, new RawDataEventArgs(HttpContext.Current.Request, finalHtml)); //继续传递要发出的内容写入流 byte[] data = System.Text.UTF8Encoding.UTF8.GetBytes(finalHtml); responseStream.Write(data, 0, data.Length); } }