Utilisez la classe FtpWebRequest ou l'ancienne classe WebClient.
FTP dans un compte et récupérer un fichier:
WebClient request = new WebClient();
request.Credentials =
new NetworkCredential("anonymous", "[email protected]");
try
{
// serverUri here uses the FTP scheme ("ftp://").
byte[] newFileData = request.DownloadData(serverUri.ToString());
string fileString = Encoding.UTF8.GetString(newFileData);
}
catch (WebException ex)
{
// Detect and handle login failures etc here
}
Supprimer le fichier: (. Les exemples de code sont de MSDN)
FtpWebRequest request = (FtpWebRequest)WebRequest.Create(serverUri);
request.Method = WebRequestMethods.Ftp.DeleteFile;
FtpWebResponse response = (FtpWebResponse)request.GetResponse();
Console.WriteLine("Delete status: {0}", response.StatusDescription);
response.Close();
Cela ne répond pas à vos besoins, mais considérez que FTP est un protocole non crypté. Si vous avez la possibilité de recommander une modification des exigences, vous pouvez demander un protocole crypté. –
FTP peut être enveloppé dans n'importe quel canal crypté, et FTP lui-même prend en charge le cryptage. Qu'est-ce qu'un "protocole crypté"? – bzlm
Les données d'authentification sont transmises en clair - vous pouvez les emballer - et c'est une excellente solution. Je suppose que j'aurais dû dire que ce n'est pas un protocole construit avec le cryptage en tête. Mais cela semblait évident ... Je viens de voir trop de gens supposer que les "mots de passe" FTP sont suffisants. –