Список только файлов и дата последнего изменения FTP-сервера с C # - PullRequest
1 голос
/ 11 сентября 2009

Я пытаюсь проанализировать результат команды Ftp.ListDirectoryDetails, я хочу указать только имя файла и дату последнего изменения, а не каталоги.

Команда возвращает это:

"21.01.09 18:16 Раттандом" «01-21-09 08:01 PM 9900 myfile.txt»

Кто-нибудь знает способ его анализа? Я читал, и если сервер Windows или Unix, он вернет что-то другое. Результат, который я вставляю, для FTP в Windows 2003 Server

Ответы [ 3 ]

4 голосов
/ 11 сентября 2009

Результаты списка FTP нестандартны, поэтому каждый FTP-сервер потенциально может возвращать что-то свое.

1 голос
/ 13 июля 2011

Существует рекомендуемое регулярное исключение, которое работает как на FTP-серверах на базе Windows, так и на Unix. См. этот ответ .

0 голосов
/ 03 августа 2011

Возможно, вы захотите попробовать FTP-компонент Ftp.dll , который разбирает большинство ответов команд LIX для UNIX и Windows:

using (Ftp client = new Ftp())
{
    client.Connect("ftp.example.org");
    client.Login("user", "password");

    List<FtpItem> items = client.GetList();

    foreach (FtpItem item in items)
    {
        Console.WriteLine("Name:        {0}", item.Name);
        Console.WriteLine("Size:        {0}", item.Size);
        Console.WriteLine("Modify date: {0}", item.ModifyDate);

        Console.WriteLine("Is folder:   {0}", item.IsFolder);
        Console.WriteLine("Is file:     {0}", item.IsFile);
        Console.WriteLine("Is symlink:  {0}", item.IsSymlink);

        Console.WriteLine();
    }

    client.Close();
}

Обратите внимание, что это коммерческий продукт, который я создал.

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