Используя .NET 2.0, как мне подключиться к серверу по FTP, получить файл и удалить файл? - PullRequest
6 голосов
/ 04 марта 2009

Есть ли в .NET (C #) встроенные библиотеки для FTP? Мне не нужно ничего сумасшедшего ... очень просто.

Мне нужно:

  1. FTP на счет
  2. Определить, было ли отказано в соединении
  3. Получить текстовый файл
  4. Удалить текстовый файл

Какой самый простой способ сделать это?

Ответы [ 5 ]

7 голосов
/ 04 марта 2009

Используйте класс FtpWebRequest или обычный старый WebClient класс.

FTP в учетную запись и получить файл:

WebClient request = new WebClient();
request.Credentials = 
    new NetworkCredential("anonymous", "janeDoe@contoso.com");
try 
{
    // serverUri here uses the FTP scheme ("ftp://").
    byte[] newFileData = request.DownloadData(serverUri.ToString());
    string fileString = Encoding.UTF8.GetString(newFileData);
}
catch (WebException ex)
{
    // Detect and handle login failures etc here
}

Удалить файл:

FtpWebRequest request = (FtpWebRequest)WebRequest.Create(serverUri);
request.Method = WebRequestMethods.Ftp.DeleteFile;
FtpWebResponse response = (FtpWebResponse)request.GetResponse();
Console.WriteLine("Delete status: {0}", response.StatusDescription);  
response.Close();

(Примеры кода взяты из MSDN.)

2 голосов
/ 04 марта 2009

Просто используйте класс FtpWebRequest . Он уже обрабатывает все, что вам нужно.

2 голосов
/ 04 марта 2009

В этой статье реализован графический интерфейс для клиента FTP с использованием .NET 2.0 и имеется полный исходный код с примерами.

Пример кода включает в себя подключение, загрузку и выгрузку, а также хорошие комментарии и объяснения.

1 голос
/ 04 марта 2009

Использование System.Net.FtpWebRequest / FtpWebResponse

0 голосов
/ 04 июня 2009

Используйте edtFTPnet , бесплатную библиотеку .NET FTP с открытым исходным кодом, которая будет делать все, что вам нужно.

...