StreamWriter将所有内容写入同一行

时间:2013-12-17 18:16:22

标签: c# httpwebrequest httpwebresponse

我有一个小的HttpWebRequest,用于从在线.txt文件中获取一些文本

获取后我想将其保存到计算机上的.txt文件中。

文本的内容是这样的形式:

Line one
Line two
Line four
Line Five
Line ten etc.

但是当它保存时它会像这样结束:

Line oneLine twoLine fourLine FiveLine ten etc.

我该如何解决这个问题?

代码如下:

HttpWebRequest WebReq3 = (HttpWebRequest)WebRequest.Create("http://test.net/test.txt");

HttpWebResponse WebResp3 = (HttpWebResponse)WebReq3.GetResponse();

System.IO.StreamReader sr3 = new System.IO.StreamReader(WebResp3.GetResponseStream());


System.IO.StreamWriter _WriteResult = new StreamWriter(Application.StartupPath + "\Test.txt");
_WriteResult.Write(sr3.ReadToEnd());
_WriteResult.Close();

sr3.Close();

1 个答案:

答案 0 :(得分:1)

使用ReadLine()读取数据,并使用WriteLine()代替ReadToEnd()WriteToEnd()进行撰写。

删除此行:

_WriteResult.Write(sr3.ReadToEnd());

用这个修改你的代码:

string readval = sr3.ReadLine();
while(readval != null)
{
    _WriteResult.WriteLine(readval);
    readval = sr3.ReadLine();
}

有关详细信息,请参阅the documentation