Докачка файла, FTP

Язык Visual Basic на платформе .NET.

Модераторы: Ramzes, Sebas

DRU
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 56
Зарегистрирован: 16.11.2008 (Вс) 23:26
Откуда: Беларусь, Гомель

Докачка файла, FTP

Сообщение DRU » 07.01.2010 (Чт) 14:43

1. Хотелось бы реализовать докачку файлов, а также докачку upload.
Пользуюсь этим куском:
Код: Выделить всё
  Dim remoteFile As String = ""
        Dim localFile As String = My.Application.Info.DirectoryPath & "\downloaded\" & Strings.Right(remoteFile, Len(remoteFile) - Strings.InStrRev(remoteFile, "/"))
        Dim host As String = "ftp://"
        Dim username As String = "anonymous"
        Dim password As String = ""
        'Create a request
        Dim URI As String = host & remoteFile
        Dim ftp As System.Net.FtpWebRequest = CType(System.Net.FtpWebRequest.Create(URI), System.Net.FtpWebRequest)
        'Set the credentials
        ftp.Credentials = New System.Net.NetworkCredential(username, password)
        'Turn off KeepAlive (will close connection on completion)
        ftp.KeepAlive = False
        'we want a binary
        ftp.UseBinary = True
        'Define the action required (in this case, download a file)
        ftp.Method = System.Net.WebRequestMethods.Ftp.DownloadFile
        'If we were using a method that uploads data e.g. UploadFile
        'we would open the ftp.GetRequestStream here an send the data
        ' Get the response to the Ftp request and the associated stream
        Using response As System.Net.FtpWebResponse = CType(ftp.GetResponse, System.Net.FtpWebResponse)
            Using responseStream As IO.Stream = response.GetResponseStream
                'loop to read & write to file
                Using fs As New IO.FileStream(localFile, IO.FileMode.Create)
                    Dim buffer(2047) As Byte
                    Dim read As Integer = 0
                    Do
                        read = responseStream.Read(buffer, 0, buffer.Length)
                        fs.Write(buffer, 0, read)
                    Loop Until read = 0 'see Note(1)
                    responseStream.Close()
                    fs.Flush()
                    fs.Close()
                End Using
                responseStream.Close()
            End Using
            response.Close()
        End Using
    End Sub

Вернуться в Visual Basic .NET

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 25

    TopList