Подсоеденится по ftp и залить файл, как?
Иструменты: Microsoft Visual Studio 2005, VB.NET, виндоус-приложение
Написал:
Вызов-
"
Upload("myFile.txt", "ftp://ftp.myftphost.ru/yyyyyyy/zzz/")
"
Сама функция-
"
Private Sub Upload(ByVal fileName As String, ByVal uploadUrl As String)
Dim requestStream As Stream = Nothing
Dim fileStream As FileStream = Nothing
Dim uploadResponse As FtpWebResponse = Nothing
Try
Dim uploadRequest As FtpWebRequest = WebRequest.Create(uploadUrl)
uploadRequest.Method = WebRequestMethods.Ftp.UploadFile
uploadRequest.Credentials = New NetworkCredential("myuser", "mypass")
' UploadFile is not supported through an Http proxy
' so we disable the proxy for this request.
uploadRequest.Proxy = Nothing
requestStream = uploadRequest.GetRequestStream()
fileStream = File.Open(fileName, FileMode.Open)
Dim buffer(1024) As Byte
Dim bytesRead As Integer
While True
bytesRead = fileStream.Read(buffer, 0, buffer.Length)
If bytesRead = 0 Then
Exit While
End If
requestStream.Write(buffer, 0, bytesRead)
End While
' The request stream must be closed before getting the response.
requestStream.Close()
uploadResponse = uploadRequest.GetResponse()
Console.WriteLine("Upload complete.")
Catch ex As UriFormatException
Console.WriteLine(ex.Message)
Catch ex As IOException
Console.WriteLine(ex.Message)
Catch ex As WebException
Console.WriteLine(ex.Message)
Finally
If uploadResponse IsNot Nothing Then
uploadResponse.Close()
End If
If fileStream IsNot Nothing Then
fileStream.Close()
End If
If requestStream IsNot Nothing Then
requestStream.Close()
End If
End Try
End Sub
"
На "requestStream = uploadRequest.GetRequestStream()" ругается вот так:
"
The requested URI is invalid for this FTP command.
"
Плиз скажите, где я туплю? Если у кого есть рабочий код заливки файла на ftp, то тоже буду рад(VB.NET).
Нечитабельно.
http://www.enterprisedt.com/index.html
В результате у меня получился код гораздо проще и "читабельней":
Dim ftpConnectionToLogicPC As New FTPConnection()
ftpConnectionToLogicPC.ServerAddress = "ftp.myhost.ru"
ftpConnectionToLogicPC.UserName = "myuser"
ftpConnectionToLogicPC.Password = "mypass"
ftpConnectionToLogicPC.Connect()
ftpConnectionToLogicPC.ChangeWorkingDirectory("xxxx")
ftpConnectionToLogicPC.ChangeWorkingDirectory("eeee")
ftpConnectionToLogicPC.UploadFile("wwww.html", "qqqq.html")
ftpConnectionToLogicPC.Close()
Для начинающих: незабудьте подключить импорты и dll'ку
Спасибо всем, вопрос решен.
Не совсем понятно, что именно "Нечитабельно". В любом случаии я решил сделать вот так:
В результате у меня получился код гораздо проще и "читабельней":
Dim ftpConnectionToLogicPC As New FTPConnection()
ftpConnectionToLogicPC.ServerAddress = "ftp.myhost.ru"
ftpConnectionToLogicPC.UserName = "myuser"
ftpConnectionToLogicPC.Password = "mypass"
ftpConnectionToLogicPC.Connect()
ftpConnectionToLogicPC.ChangeWorkingDirectory("xxxx")
ftpConnectionToLogicPC.ChangeWorkingDirectory("eeee")
ftpConnectionToLogicPC.UploadFile("wwww.html", "qqqq.html")
ftpConnectionToLogicPC.Close()
Для начинающих: незабудьте подключить импорты и dll'ку
Спасибо всем, вопрос решен.
тоесть вы экономите свой трафик и время , до 10мб. можно перенести бесплатно, далше заказывается погигово. Если у Вас большой сайт,несколько Гиг и Вы хотите перенести его на новый хостинг - очень удобно.
http://directransfer.net
Реклама! Но все равно спасибо.