Click here to Skip to main content
11,430,109 members (69,739 online)
Click here to Skip to main content

An "easy to use" FTP client library

, 10 May 2006
Rate this:
Please Sign up or sign in to vote.
Get connected to your FTP server

Introduction

The .Net Framework 2.0 has built-in support for accessing FTP server through the FtpWebRequest and FtpWebResponse classes.

This library provides easy access to the most common operations against FTP servers by providing an easy interface against this new features in the .Net 2.0 Framework.

I am sure there is a lot more to FTP than what is covered here, but if your needs are simple, this may be a starting point.

Using the library

Say that you want to upload a file to a remote FTP server.

The following example shows how to use FtpDotNet to accomplish this task.

try
 {
     FtpConnection connection = new FtpConnection();
     connection.MessageReceived += new FtpConnectionEventHandler(connection_MessageReceived);
     connection.Host = "ftp://ftp.myserver.com";
     connection.UserName = "username";
     connection.Password = "password";
     connection.RemoteDirectory = "/MyDirectory";
     connection.Upload(@"C:\Temp\House.jpg", "House.jpg");
 }
 catch (WebException ex)
 {
     Console.WriteLine(ex.ToString());
 }
 catch (Exception ex)
 {
     Console.WriteLine(ex.ToString());
 }

 

The connection object has an event called Messagereceived where you can retrieve response messages sent from the  FTP server during operations.

<PRE class=code>void connection_MessageReceived(object sender, FtpConnectionEventArgs e)
{
    Console.WriteLine(e.Message);
}

 

 


 

License

This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here

Share

About the Author

seesharper
Software Developer
Norway Norway
I'm a 39 year old software developer living in Norway.
I'm currently working for a software company making software for the retail industry.
Follow on   Twitter

Comments and Discussions

 
QuestionHow to Add % complete or Bytes send during the upload? Pin
wozzarvl17-Apr-15 7:40
memberwozzarvl17-Apr-15 7:40 
Question<DIR> is not handled by regular expression Pin
pvolchek20-Jul-11 10:13
memberpvolchek20-Jul-11 10:13 
I got an FTP site, returning '07-13-2011 11:16AM <DIR> DATA' as a directory listing request.
As you could seem the year returned is 4 digits, while the code uses the regular expression with 2.
I've just added two more regexes, having 4 digits in year place.
No idea if this is right or not.
Thanks
Peter Volchek

Generalgood! Pin
yuyejian4-Jun-10 0:00
memberyuyejian4-Jun-10 0:00 
GeneralA comfortable FTP class in .NET Pin
Elmue27-Aug-08 13:40
memberElmue27-Aug-08 13:40 
QuestionLicense Pin
KITTA196424-Mar-08 1:53
memberKITTA196424-Mar-08 1:53 
GeneralRe: License Pin
seesharper1-Apr-08 9:04
memberseesharper1-Apr-08 9:04 
QuestionProxy Pin
tarantula325-Jan-08 13:36
membertarantula325-Jan-08 13:36 
GeneralCreateWebRequest fails Pin
ccengine8-Oct-07 2:23
memberccengine8-Oct-07 2:23 
GeneralThe remote server returned an error: (530) Not logged in Pin
Charles Meyer17-Feb-07 11:00
memberCharles Meyer17-Feb-07 11:00 
GeneralRe: The remote server returned an error: (530) Not logged in Pin
MH253817-Mar-07 1:47
memberMH253817-Mar-07 1:47 
GeneralThank You! Pin
DORMark10-Jan-07 7:45
memberDORMark10-Jan-07 7:45 
QuestionQuestions... [modified] Pin
chris17510-Nov-06 6:28
memberchris17510-Nov-06 6:28 
Generalabout DirectoryList [modified] Pin
Alper Hankendi11-Oct-06 23:44
memberAlper Hankendi11-Oct-06 23:44 
QuestionNice FTP code but need some help. Pin
Adnan Jamil15-Jun-06 9:19
memberAdnan Jamil15-Jun-06 9:19 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

| Advertise | Privacy | Terms of Use | Mobile
Web03 | 2.8.150428.2 | Last Updated 10 May 2006
Article Copyright 2006 by seesharper
Everything else Copyright © CodeProject, 1999-2015
Layout: fixed | fluid