Nov 28, 2011

C# kodlarla FTP-ə fayl upload etmək

Salam dostlar.
Daha əvvəl yazmış olduğum kiçik bir programı sizlərlə bölüşmək üçün bu yazımı yazdım. Bu program FTP Uploader-dir. Programın funksiyası FTP diectoriyasına seçilən faylı seçilən folder-ə upload etməkdir.

Əvvəlcə belə bir form dizayn edək. Şəkildən də görsəndiyi kimi ftp adresini yazmaq, username yazmaq, password yazmaq üçün textBoxlar yerləşdirilmişdir. Upload ediləcək faylı seçmək üçün burada openFileDialog-dan istifadə edilib.


openFTPFile.Title = "Faylı seç";
openFTPFile.FileName = "";
openFTPFile.Filter = "Bütün fayllar(*.*)|*.*";


if (openFTPFile.ShowDialog() == DialogResult.OK)
{
tbDirectory.Text = openFTPFile.FileName;
}


kodlardan da görsəndiyi kimi burada fayl seçilir.


Upload ediləcək faylımızı seçdik.
Təbiki bundan əvvəl biz ftp adresimizi username və passwordumuzu yazmalıyıq :).
Qeyd etdiyim məlumatları yazdıqdan sonra aşağıdakı kodlar vasitəsilə biz seçdiyimiz faylı qeyd etmiş olduğumuz ftp adresə upload edə bilərik.



FtpWebRequest request = null;


try
{
FileInfo toUpload = new FileInfo(this.tbDirectory.Text);


request = (FtpWebRequest)WebRequest.Create("ftp://" + tbFtpAddress.Text + "/" + toUpload.Name);


request.Method = WebRequestMethods.Ftp.UploadFile;


request.Credentials = new NetworkCredential(tbUsername.Text, tbPassword.Text);


Stream ftpStream = request.GetRequestStream();


FileStream file = File.OpenRead(tbDirectory.Text);


int length = 1024;
byte[] buffer = new byte[length];
int bytesRead = 0;


do
{
bytesRead = file.Read(buffer, 0, length);
ftpStream.Write(buffer, 0, bytesRead);
}
while (bytesRead != 0);


file.Close();
ftpStream.Close();


tbResponse.Text = "File upload succesfully completed!";
}
catch (Exception ex)
{ tbResponse.Text = "Upload failed: " + ex.Message; }


bu da bizim ftp upload kod örnəklərindən biri. Təbiki programlaşdırma geniş sahə olduğuna görə bu ftp -ə fayl upload etmək üçün yollardan sadəcə biridir. Ümid edirəmki faydalı olar. :)

No comments:

Post a Comment

Zəhmət olmasa şərhlərinizi yazın