HOME > .NET Framework > Forum > VB.NET + FTP ตรวจสอบโค้ดให้หน่อย ว่าทำไมเมื่อวนลูปแล้วมันแสดงชื่่อไฟล์ ซ้ำออกมาได้ คือ ไม่ต้องการให้มันซ้ำครับ ftp server หาไฟลทั้งหมดที่มีบน server
VB.NET + FTP ตรวจสอบโค้ดให้หน่อย ว่าทำไมเมื่อวนลูปแล้วมันแสดงชื่่อไฟล์ ซ้ำออกมาได้ คือ ไม่ต้องการให้มันซ้ำครับ ftp server หาไฟลทั้งหมดที่มีบน server
Imports System.Net
Imports System.IO
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim ftp As FtpWebRequest = DirectCast(WebRequest.Create("ftp://172.21.41.49/sawlibrary/DFD-640/SAW-01/ACN0004P REV. A/"), FtpWebRequest)
ftp.Method = WebRequestMethods.Ftp.ListDirectory
Dim ftpFiles As New ArrayList()
ftp.Credentials = New NetworkCredential("teeo", "300881")
Dim Response As FtpWebResponse = ftp.GetResponse()
Dim responseStream As Stream = Response.GetResponseStream()
Dim reader = New StreamReader(responseStream)
While Not (reader.EndOfStream)
ftpFiles.Add(reader.ReadLine())
'ListBox1.Items.Add(ftpFiles.ToString())
For Each file In ftpFiles
ListBox1.Items.Add(file)
Next
End While
reader.Close()
responseStream.Close()
Response.Close()
End Sub
End Class
ตอบเองเลยละกัน ได้ล่ะ
มาดูเลยดาวโหลด all ไฟล์
โค้ดดูไม่ดีเท่าไหรเพราะพึ่งหัด โม ใหม่
Code (VB.NET)
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Try
Dim ftp As FtpWebRequest = DirectCast(WebRequest.Create("ftp://ที่อยู่ของไฟล์"), FtpWebRequest)
ftp.Method = WebRequestMethods.Ftp.ListDirectory
Dim ftpFiles As New ArrayList()
ftp.Credentials = New NetworkCredential("user", "pass")
Dim Response As FtpWebResponse = ftp.GetResponse()
Dim responseStream As Stream = Response.GetResponseStream()
Dim reader = New StreamReader(responseStream)
While Not (reader.EndOfStream)
ftpFiles.Add(reader.ReadLine())
End While
For Each file In ftpFiles
My.Computer.Network.DownloadFile("http://ตำแหน่งไฟล์อยู่"+ "/" + file,"ตำแหน่งเซฟ" + "\" + file)
Next
reader.Close()
responseStream.Close()
Response.Close()
MsgBox("Download Complate!")
Catch ex As Exception
MessageBox.Show(ex.Message, "Messsage")
End Try
End Sub