C # FTP приложение загружает в локальный каталог - PullRequest
2 голосов
/ 15 ноября 2011

Я только что написал простое консольное приложение FTP для загрузки файлов с локального сервера на удаленный FTP-сайт.Кажется, все работает нормально, пока не происходит передача файла.По какой-то причине вместо загрузки файла на указанный FTP-сайт он хранит весь файл локально, без имени, в папке Debug без типа файла и называет его таким же, как ip FTP-сайта.Я думаю, что это как-то связано с отладкой в ​​Visual Studio.Кто-нибудь может дать мне несколько советов по этому поводу?

Вот код, который я использую, чтобы попытаться загрузить каждый файл в виде массива строк на FTP-сайт.

Ответы [ 2 ]

1 голос
/ 15 ноября 2011

Используйте этот метод вместо этого, он работал для меня.

 //Directory sands for Remote Server Directory ,it must create if dir not exist
FtpWebRequest request = (FtpWebRequest)WebRequest.Create("ftp://serverIP/directory/file");
request.Method = WebRequestMethods.Ftp.UploadFile;

request.Credentials = new NetworkCredential ("username","password");

// Copy the contents of the file to the request stream.
StreamReader sourceStream = new StreamReader("testfile.txt");
byte [] fileContents = Encoding.UTF8.GetBytes(sourceStream.ReadToEnd());
sourceStream.Close();
request.ContentLength = fileContents.Length;

Stream requestStream = request.GetRequestStream();
requestStream.Write(fileContents, 0, fileContents.Length);
requestStream.Close();

FtpWebResponse response = (FtpWebResponse)request.GetResponse();
response.Close();

source- http://msdn.microsoft.com/en-us/library/ms229715.aspx

0 голосов
/ 15 ноября 2011

Попробуйте вместо этого: http://msdn.microsoft.com/en-us/library/ms229715.aspx

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...