web-dev-qa-db-fra.com

Comment télécharger un fichier sur un chemin spécifique depuis une URL donnée dans un formulaire Windows?

Je dois télécharger des fichiers pdf à partir de liens spécifiés (URL) vers un dossier spécifique dans une application Windows à l'aide de winforms. Si quelqu'un peut me suggérer une solution.

11
Arun Kumar
using System.Net;

using (WebClient webClient = new WebClient())
{
    webClient.DownloadFile("http://mysite.com/myfile.txt", @"c:\myfile.txt");
}
25
Viper

Vous pouvez utiliser la méthode WebClient.DownloadFile , disponible depuis .NET 2.0. Il est utilisable depuis tout type d’application, pas seulement Winforms.

Vous devez savoir que DownloadFile bloque jusqu'à ce que le téléchargement du fichier entier soit terminé. Pour éviter le blocage, vous pouvez utiliser la méthode WebClient.DownloadFileAsync qui téléchargera en arrière-plan et déclenchera l'événement DownloadFileCompleted à la fin du téléchargement.

8
Panagiotis Kanavos

Vous pouvez simplement "rechercher sur le Web" ("google") pour "fichier de téléchargement C #", et vous retrouver avec cet exemple MSDN simple (modifié pour répondre à votre question):

string remoteUri = "http://www.test.com/somefile.pdf";
string fileName = "c:\\targetfolder\\somefile.pdf";

WebClient myWebClient = new WebClient();
myWebClient.DownloadFile(remoteUri,fileName);
6
Christoffer
myWebClient.DownloadFile(myStringWebResource,fileName); 

Si ce n'est pas le cas, le chemin cible n'est pas spécifié et si vous le donnez comme file.abc, il est téléchargé dans un chemin appelé Application.StartupPath comme nom file.abc . Il vous suffit donc de donner votre chemin spécifique comme @"C:\\Folder1\\Folder2\\file.abc"

Je pense que cela aidera un peu plus. Je ne pouvais pas l'obtenir au premier site d'échantillons de codes fournis par MSDN et j'ai enfin trouvé ceci.

0
diyoda_