FileToUpload - Путь к файлу для загрузки
FtpAdress - Адрес ftp сервера включая папку в которую загружать
FTPUsername - Имя пользователя FTP сервера
FTPPassword - Пароль от FTP сервера
Пример вызова функции:
Код
UploadToFtp("file.txt","ftp://user.hosting.ru/public_html/","username", "userpwd");
Код
public void UploadToFtp(string FileToUpload, string FTPAdress, string FTPUsername, string FTPPassword)
{
try
{
FileInfo toUpload = new FileInfo(FileToUpload);
FtpWebRequest request = (FtpWebRequest)WebRequest.Create(FTPAdress + toUpload.Name);
request.Method = WebRequestMethods.Ftp.UploadFile;
request.Credentials = new NetworkCredential(FTPUsername, FTPPassword);
Stream ftpStream = request.GetRequestStream();
FileStream fileStream = File.OpenRead(FileToUpload);
byte[] buffer = new byte[1024];
int bytesRead = 0;
do
{
bytesRead = fileStream.Read(buffer, 0, 1024);
ftpStream.Write(buffer, 0, bytesRead);
}
while (bytesRead != 0);
fileStream.Close();
ftpStream.Close();
Properties.Settings.Default.uploaded = true;
}
catch
{
Thread.Sleep(8000); //в случае неудачи ждет 8 сек и пытается отправить снова
UploadToFtp("file.txt","ftp://user.hosting.ru/public_html/","username", "userpwd");
}
}