2016-05-09 22 views
0

Ich versuche, eine Textdatei (Changelog) von einer Website herunterzuladen und in einer Komponente in C# zu schreiben.Das Herunterladen einer Textdatei von einer Website ignoriert neue Zeilen

Ich versuchte Listbox, Listview, Textbox, aber ich denke nicht, dass es darauf ankommt. Die neuen Zeilen werden komplett ignoriert und es werden alle Daten in einer Zeile gerade angezeigt.

habe ich versucht, die folgenden Methoden:

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(); 
} 

Und

using (WebClient wc = new WebClient()) 
{ 
    string changelog = wc.DownloadString("http://somesite.com/changelog.txt"); 
    textBox1.Text = changelog; 
} 

Beide Verfahren 1 Zeile aller Daten zurückgegeben. Ich brauche die neuen Zeilen, damit ich sie zB in textBox verwenden kann und sie richtig aussehen lässt. Im Moment ist es sehr unordentlich in einer Zeile und unlesbar.

Probe changelog.txt Inhalt:

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 

es Feste von .Replace("\n", "\r\n"); am Ende textBox1.Text = res.ReadToEnd();

Zugabe

textBox1.Text = res.ReadToEnd().Replace("\n", "\r\n");

+0

anzeigen ein Beispiel für 'changelog.txt' Inhalt –

+0

@AlexJolig Fertig – user6274399

+0

Ist es zufällig eine Datei mit Unix-Zeilenende? –

Antwort

0

Sie auf diese Weise tun können:

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); 
    } 
}