آموزش کار با اف تی پی و آپلود و دانلود فایل و نمایش حجم فایل و نمایش زمان آخرین تغییر فایل
سلام بر برنامه نویسان #C …
در این مطلب آموزشی ، یاد می گیرید که چه طور با استفاده از FTP و زبان برنامه نویسی سی شارپ ، فایل هاتون رو آپلود کنید و یک فایلی رو از سرور ftp دانلود کنید و حجم یک فایل رو به کاربر نمایش بدهید و زمان آخرین تغییر فایل رو به کاربر نمایش بدهید.
همچنین شما می توانید سورس کد آپلود فایل در ftp و سورس کد گرفتن اطلاعات مانند حجم و زمان آخرین تعیییرات صورت گرفته شده در فایل رو دانلود کنید.(برای دانلود سورس کد و مشاهده ی کامل آموزش باید عضو vip سایت باشید)
برای اطلاعات بیش تر درباره ftp این لینک را مشاهده کنید.
ابتدا آپلود فایل رو توضیح می دهم.
برای این کار ابتدا 2 فضای نام زیر را به پروژه تان اضافه کنید:
using System.IO;
- سپس یک label با نام lblStatus برای نمایش وضعیت آپلود به کاربر (مثلا پیغام های Working و Done و Error و …) به فرم اضافه کنید.
- سپس یک تکست باکس با نام txtUri اضافه کنید که کاربر آدرس سایت را وارد کنید مثلا ftp://www.example.com/test.txt
- سپس یک تکست باکس دیگر با نام txtUsername اضافه کنید که کاربر نام کاربری را وارد کند.
- سپس یک تکست باکس دیگر با نام txtPassword اضافه کنید که کاربر رمز ورود را وارد کند.
- سپس یک تکست باکس دیگر با نام txtFile اضافه کنید که مسیر فایل انتخاب شده توسط کاربر در آن وارد شود.
- سپس یک openFileDialog با نام ofdFile اضافه کنید که کاربر بتواند مسیر فایل را از کامپیوترش انتخاب کند.
- سپس یک دکمه با نام btnPickFile اضافه کنید که openFileDialog را باز کند و پس از باز کردن و انتخاب فایل توسط کاربر ، مسیر فایل در txtFile اضافه شود.
- و در نهایت یک دکمه با نام btnUpload برای آپلود فایل در فرم برنامه قرار دهید.
سپس در رویداد load فرم کدهای زیر را وارد کنید:
txtFile.Text = Application.ExecutablePath;
if (ofdFile.ShowDialog() == DialogResult.OK)
{
txtFile.Text = ofdFile.FileName;
}
کدهای بالا openFileDialog را که نامش ofdFile هست را باز می کند و اگر کاربر فایلش را انتخاب کرد و روی OK کلیک کرد ، متن تکست باکس txtFile را برابرمسیر و نام فایلی که کاربر انتخاب کرده میکند.
سپس تابع FtpUploadFile را اینگونه تعریف کنید:
{
// Get the object used to communicate with the server.
// The FtpWebRequest class enables you to programatically create FTP connections to FTP Servers and transfer files
FtpWebRequest request = (FtpWebRequest)WebRequest.Create(to_uri);
request.Method = WebRequestMethods.Ftp.UploadFile;
// Get network credentials.
request.Credentials = new NetworkCredential(user_name, password);
// Read the file's contents into a byte array.
byte[] bytes = System.IO.File.ReadAllBytes(filename);
// Write the bytes into the request stream.
// Gets the length of the data received from the FTP server
request.ContentLength = bytes.Length;
using (Stream request_stream = request.GetRequestStream())
{
request_stream.Write(bytes, 0, bytes.Length);
request_stream.Close();
}
}
برای اطلاعات بیشتر درباره ی کلاس FtpWebRequest این لینک و این لینک و این لینک را مشاهده کنید.
برای اطلاعات بیشتر درباره ی کلاس WebRequestMethods.Ftp این لینک را مشاهده کنید.
یک 3 نظر
aliali3000
ممنون
تجهیزات آشپزخانه صنعتی
ممنون از سایت خوبتون که مطالبی در جهت افزایش آگاهی افراد قرار میدید.موفق باشید