none
VB2008-請教關於 FTP 問題 RRS feed

  • 問題

  • 使用環境:
      os :xp , VB.NET 2008
    問題請教:
    我已完成 FTP 的下載功能,也測試可以下載
    但有一些問題
    需完整的告知檔案名稱,無法使用萬用字元 (*)(?) 亦就是無法一次多筆下載
    我該如何修改,才能有此功能?
    可否指點敝人
    我已在網上尋找好久一直無此方面資訊
    非常感謝你的幫忙

     Private Sub Download(ByVal downloadUrl As String)  
            Dim responseStream As Stream = Nothing 
            Dim fileStream As FileStream = Nothing 
            Dim reader As StreamReader = Nothing 
            Try  
                Dim downloadRequest As FtpWebRequest = _ 
                    WebRequest.Create(downloadUrl)  
                Dim downloadResponse As FtpWebResponse = _ 
                    downloadRequest.GetResponse()  
                responseStream = downloadResponse.GetResponseStream()  
     
                Dim fileName As String = _ 
                    Path.GetFileName(downloadRequest.RequestUri.AbsolutePath)  
     
                If fileName.Length = 0 Then  
                    reader = New StreamReader(responseStream)  
                    Console.WriteLine(reader.ReadToEnd())  
                Else  
                    fileStream = File.Create(fileName)  
                    Dim buffer(1024) As Byte  
                    Dim bytesRead As Integer  
                    While True  
                        bytesRead = responseStream.Read(buffer, 0, buffer.Length)  
                        If bytesRead = 0 Then  
                            Exit While  
                        End If  
                        fileStream.Write(buffer, 0, bytesRead)  
                    End While  
                End If  
                Console.WriteLine("Download complete.")  
            Catch ex As UriFormatException  
                Console.WriteLine(ex.Message)  
            Catch ex As WebException  
                Console.WriteLine(ex.Message)  
            Catch ex As IOException  
                Console.WriteLine(ex.Message)  
            Finally  
                If reader IsNot Nothing Then  
                    reader.Close()  
                ElseIf responseStream IsNot Nothing Then  
                    responseStream.Close()  
                End If  
                If fileStream IsNot Nothing Then  
                    fileStream.Close()  
                End If  
            End Try  
        End Sub 


     

    2009年2月12日 上午 06:20

解答

所有回覆