Does .NET (C#) have built in libraries for FTP? I don't need anything crazy... very simple.
I need to:
- FTP into an account
- Detect if the connection was refused
- Obtain a text file
- Delete the text file
What's the easiest way to do this?
Does .NET (C#) have built in libraries for FTP? I don't need anything crazy... very simple.
I need to:
What's the easiest way to do this?
Use the FtpWebRequest class, or the plain old WebClient class.
FTP into an account and retrieve a file:
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
}
Delete the file:
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();
(Code examples are from MSDN.)
This article implements a GUI for an FTP client using .NET 2.0 and has full source with examples.
Sample code includes connection, download and upload as well as good comments and explanations.
Just use the FtpWebRequest class. It already handles all the things you require.
Use edtFTPnet, a free, open source .NET FTP library that will do everything you need.