从网站下载文本文件会忽略新行
Downloading a text file from a website ignores new lines
我正在尝试从网站下载文本文件(变更日志)并将其写入 C# 的组件中。
我试过列表框、列表视图、文本框,但我认为它们都不重要。新行被完全忽略,它直接在 1 行中显示所有数据。
我尝试了以下方法:
var web = (HttpWebRequest)WebRequest.Create("http://somesite.com/changelog.txt");
web.Method = "GET";
using (var res = new StreamReader(web.GetResponse().GetResponseStream()))
{
textBox1.Text = res.ReadToEnd();
}
和
using (WebClient wc = new WebClient())
{
string changelog = wc.DownloadString("http://somesite.com/changelog.txt");
textBox1.Text = changelog;
}
这两种方法都返回了 1 行所有数据。我需要新行,这样我就可以在 textBox 中使用它并使其看起来正确。现在它在 1 行中非常混乱且不可读。
样本changelog.txt内容:
1.0.1.2
- Initial release
1.0.0.3
- Initial release
1.0.0.2
- Initial release
- Initial release
- Initial release
1.0.0.1
- Initial release
- Initial release
- Initial release
1.0.0.0
- Initial release
通过在 textBox1.Text = res.ReadToEnd();
末尾添加 .Replace("\n", "\r\n");
来修复它
textBox1.Text = res.ReadToEnd().Replace("\n", "\r\n");
你可以这样做:
var web = (HttpWebRequest)WebRequest.Create("http://somesite.com/changelog.txt");
web.Method = "GET";
using (var res = new StreamReader(web.GetResponse().GetResponseStream()))
{
string line="";
while ((line=res.ReadLine())!=null)
{
textBox1.AppendText(line+System.Environment.NewLine);
}
}
我正在尝试从网站下载文本文件(变更日志)并将其写入 C# 的组件中。
我试过列表框、列表视图、文本框,但我认为它们都不重要。新行被完全忽略,它直接在 1 行中显示所有数据。
我尝试了以下方法:
var web = (HttpWebRequest)WebRequest.Create("http://somesite.com/changelog.txt");
web.Method = "GET";
using (var res = new StreamReader(web.GetResponse().GetResponseStream()))
{
textBox1.Text = res.ReadToEnd();
}
和
using (WebClient wc = new WebClient())
{
string changelog = wc.DownloadString("http://somesite.com/changelog.txt");
textBox1.Text = changelog;
}
这两种方法都返回了 1 行所有数据。我需要新行,这样我就可以在 textBox 中使用它并使其看起来正确。现在它在 1 行中非常混乱且不可读。
样本changelog.txt内容:
1.0.1.2
- Initial release
1.0.0.3
- Initial release
1.0.0.2
- Initial release
- Initial release
- Initial release
1.0.0.1
- Initial release
- Initial release
- Initial release
1.0.0.0
- Initial release
通过在 textBox1.Text = res.ReadToEnd();
.Replace("\n", "\r\n");
来修复它
textBox1.Text = res.ReadToEnd().Replace("\n", "\r\n");
你可以这样做:
var web = (HttpWebRequest)WebRequest.Create("http://somesite.com/changelog.txt");
web.Method = "GET";
using (var res = new StreamReader(web.GetResponse().GetResponseStream()))
{
string line="";
while ((line=res.ReadLine())!=null)
{
textBox1.AppendText(line+System.Environment.NewLine);
}
}