[VB.NET] Hướng dẫn sử dụng Drag drop Multi file to ListBox và Upload file lên FTP Server
Hi! Xin chào tất cả các bạn, thời gian đã ủng hộ laptrinhvb.net. Bài viết hôm nay, mình xin hướng dẫn các bạn sử dụng chức năng Drag and Drop nhiều file vào ListBox và sử dụng vòng lặp để duyệt tất cả các File vừa chọn upload lên FTP server . FTP ...
Hi! Xin chào tất cả các bạn, thời gian đã ủng hộ laptrinhvb.net. Bài viết hôm nay, mình xin hướng dẫn các bạn sử dụng chức năng Drag and Drop nhiều file vào ListBox và sử dụng vòng lặp để duyệt tất cả các File vừa chọn upload lên FTP server.
FTP (viết tắt của File Transfer Protocol dịch ra là"Giao thức truyền tập tin") thường được dùng để trao đổi tập tin qua mạng lưới truyền thông dùng giao thức TCP/IP (chẳng hạn như Internet - mạng ngoại bộ - hoặc Intranet - mạng nội bộ). Hoạt động của FTP cần có hai máy tính, một máy chủ và một máy khách).
Giao diện demo ứng dụng Upload File FTP server VB.NET
Để thực hiện bài demo này, các bạn tạo cho mình:
+ Một listbox
+ Một button để upload lên FTP Server.
Trong bài viết này, mình sử dụng File zilla để tạo FTP server và tạo username: nguyenthao và password: 123456 cho FTP server.
- Đầu tiên chúng ta cần import thư viện vào xử lý file vào
Imports System.IO
- Viết đến mình sẽ viết 2 sự kiện DrapDrop và Drap Enter của Listbox. (các bạn nhớ chọn thuộc tính AllowDrop của Listbox để listbox cho phép chúng ta drap và drop tập tin vào nhé)
Private Sub ListBox1_DragDrop(sender As Object, e As DragEventArgs) Handles lstSelectMultiFile.DragDrop If e.Data.GetDataPresent(DataFormats.FileDrop) Then Dim filePaths As String() = CType(e.Data.GetData(DataFormats.FileDrop), String()) For Each fileLoc As String In filePaths lstSelectMultiFile.Items.Add(fileLoc) Next fileLoc End If End Sub Private Sub ListBox1_DragEnter(sender As Object, e As DragEventArgs) Handles lstSelectMultiFile.DragEnter If e.Data.GetDataPresent(DataFormats.FileDrop) Then e.Effect = DragDropEffects.Copy Else e.Effect = DragDropEffects.None End If End Sub
- Sau khi chúng ta chọn các tập tin cần upload lên FTP server xong, chúng ta sử dụng vào lặp foreach để đọc tập cả các item trong Listbox và lần lượt upload chúng lên FTP.
Private Sub btnUpload_Click(sender As Object, e As EventArgs) Handles btnUpload.Click For Each item As String In lstSelectMultiFile.Items Dim filename As String filename = Path.GetFileName(item) Dim request As System.Net.FtpWebRequest = DirectCast(System.Net.WebRequest.Create("ftp://127.0.0.1/ftp/" + filename), System.Net.FtpWebRequest) request.Credentials = New System.Net.NetworkCredential("nguyenthao", "123456") request.Method = System.Net.WebRequestMethods.Ftp.UploadFile Dim file() As Byte = System.IO.File.ReadAllBytes(item) Dim strz As System.IO.Stream = request.GetRequestStream() strz.Write(file, 0, file.Length) strz.Close() strz.Dispose() Next End Sub
Và dưới đây là video demo của ứng dụng:
Cám ơn các bạn đã theo dõi.
DOWNLOAD SOURCE