Frage

Ich bin eine Datei von einer Website herunter, und ich habe den Link. Aber das Endteil des Lenkers ändert sich auf den aktuellen Monat. Ich muss über den Link in einer Schleife, Änderungen des Monats ein Teil davon zu machen, und die Datei herunterladen.

Meine erste Frage ist, wie zu wissen, ob eine Verbindung fehlgeschlagen ist, auf einem anderen Link zu gehen? Zweitens können Sie mir empfehlen, einen Weg, um eine Schleife durch den Link?

Zunächst stelle ich den Link in einem Textfeld ein.

Hier ist der aktuelle Code

if (textBox2.Text != "")
             {
                 System.Net.WebClient we = new System.Net.WebClient();
                 we.DownloadFile(textBox2.Text, "c:\\NPPES.zip");
//this is the link                 //"http://nppesdata.cms.hhs.gov/NPPES_Data_Dissemination_July_2009.zip","c:\\NPPES.zip");
                 //string file = "C:\\NPPES.csv";
                 Unzipfile("c:\\NPPES.zip", "c:\\NPPES.csv");
                 MessageBox.Show("Download complete.Select the file to Import data");
             }
War es hilfreich?

Lösung

, wenn sie von „Schleife durch den Link“ meinen Sie einen richtigen Link zu generieren, können Sie dies tun:

string curr_month = DateTime.Now.ToString("MMMM_yyyy",
                System.Globalization.CultureInfo.GetCultureInfo("en-US").DateTimeFormat);
string link = "http://nppesdata.cms.hhs.gov/NPPES_Data_Dissemination_" 
             + curr_month
             + ".zip";

zu überprüfen, ob ein Download succeded, fangen die WebException:

System.Net.WebClient we = new System.Net.WebClient();
try
{
    we.DownloadFile("", "");
}
catch (System.Net.WebException wex)
{
    //failed!
}
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top