Dateidownload mit C#

Gast #989337
Lesenswert?

Hallo,

ich möchte eine Datei aus dem Internet downloaden, jedoch wird die Datei 
immer geöffnet.
Wenn es eine zip Datei ist funktioniert es.
Wo liegt mein Fehler?
1
private void downloadUpdateButton_Click(object sender, EventArgs e)
2
{
3
   try
4
   {
5
     Process.Start("http://www.xxxxxxx.de/downloads/firmware.hex");
6
   }
7
   catch (WebException ex)
8
   {
9
     MessageBox.Show(ex.Message, Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Error);
10
   }
11
}
#989613
Lesenswert?

Michael wrote:
> Hallo,
>
> ich möchte eine Datei aus dem Internet downloaden, jedoch wird die Datei
> immer geöffnet.
> Wenn es eine zip Datei ist funktioniert es.
> Wo liegt mein Fehler?

Der Fehler liegt wohl eher daran, was für die Dateiendung/den Dateityp 
im System und Browser eingestellt ist.

Man kann das ganze aber auch relativ einfach ohne Umweg machen:
1
    byte[] buffer = new byte[16384];
2
    int len;
3
    HttpWebRequest req = (HttpWebRequest)WebRequest.Create("http://atmel.com/dyn/resources/prod_documents/doc8067.pdf");
4
    HttpWebResponse res = (HttpWebResponse)req.GetResponse();
5
    Stream stream = res.GetResponseStream();
6
    FileStream file = File.Create("test.pdf");
7
    // Den Originalnamen kann man sich mit 
8
    // res.ResponseUri.Segments.Last() besorgen
9

10
    do {
11
        len = stream.Read(buffer, 0, 16384);
12
        if (len < 1) break;
13
        file.Write(buffer, 0, len);
14
    } while (len > 0);
15
    file.Close();

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren