我正在使用以下代码来读取响应:
using (Stream MyResponseStream = hwresponse.GetResponseStream())
{
byte[] MyBuffer = new byte[4096];
int BytesRead;
while (0 < (BytesRead = MyResponseStream.Read(MyBuffer, 0, MyBuffer.Length)))
{
ByteArrayToFile("request.txt", MyBuffer, BytesRead);
}
}
这是写入文件的函数:
public void ByteArrayToFile(string _FileName, byte[] _ByteArray, int BytesRead)
{
System.IO.FileStream _FileStream = new System.IO.FileStream(_FileName, System.IO.FileMode.Append, System.IO.FileAccess.Write);
_FileStream.Write(_ByteArray, 0, BytesRead);
_FileStream.Close();
}
如果我使用 webclient,我会得到新行,所有内容都已正确解析。当我使用 HttpWebResponse 时,新行字符被删除(不是全部,而是 80%)。任何提示为什么会这样?谢谢!
请您参考如下方法:
您可以只使用以下代码将整个响应写入文件:
using (StreamReader MyResponseStream = new StreamReader(hwresponse.GetResponseStream()))
{
using (StreamWriter _FileStream = new StreamWriter("request.txt", true))
{
_FileStream.Write(MyResponseStream.ReadToEnd());
}
}
