C#でFluent FTPを使用して、FTPサーバーから最後に追加/コピーされたファイルを取得します

development_.net

以下のコードを使用しています。(FluentFTP)が、Item.Modifiedはファイルの作成日のみを提供します。したがって、コピーされたファイルの作成日に基づいてレンダリングされます。(コピー時ではありません)FluentFTPでコピー/追加された日付に基づいてファイルを取得するにはどうすればよいですか。

private static void GetFiles()
    {
        using (FtpClient conn = new FtpClient())
        {
            string ftpPath = "ftp://myftp/";

            Dictionary<string, string> dirList = new Dictionary<string, string>();

            DateTime lastRunDate = DateTime.Now.AddMinutes(-2);

            string downloadFileName = @"C:\temp\FTPTest\";

            string newID = Guid.NewGuid().ToString();

            downloadFileName += newID + "\\";

            conn.Host = ftpPath;
            //conn.Credentials = new NetworkCredential("ftptest", "ftptest");
            conn.Connect();

            //Get all directories

            foreach (FtpListItem item in conn.GetListing(conn.GetWorkingDirectory(),
                FtpListOption.Modify | FtpListOption.Recursive))
            {
                // if this is a file
                if (item.Type == FtpFileSystemObjectType.File)
                {
                    if (item.Modified >= lastRunDate)
                    {
                        dirList.Add(item.FullName, item.Modified.ToString());
                        conn.DownloadFile(downloadFileName + item.FullName, item.FullName);
                    }
                }
            }
        }
    }
development_.net

説明:

同じフォルダ構造でFTP(読み取り許可が必要)からファイルをダウンロードしています。したがって、ジョブを実行するたびに、同じファイル(フルパス)が存在するかどうかを物理パスにチェックインできます。存在しない場合は、新しいファイルと見なすことができます。そして、私は同じためにいくつかのアクションを実行し、同様にダウンロードすることができます。

その単なる代替ソリューション。

コードの変更:

private static void GetFiles()
    {
        using (FtpClient conn = new FtpClient())
        {
            string ftpPath = "ftp://myftp/";

            string downloadFileName = @"C:\temp\FTPTest\";

            downloadFileName +=  "\\";

            conn.Host = ftpPath;
            //conn.Credentials = new NetworkCredential("ftptest", "ftptest");
            conn.Connect();

            //Get all directories

            foreach (FtpListItem item in conn.GetListing(conn.GetWorkingDirectory(),
                FtpListOption.Modify | FtpListOption.Recursive))
            {
                // if this is a file
                if (item.Type == FtpFileSystemObjectType.File)
                {
                    string localFilePath = downloadFileName + item.FullName;

                    //Only newly created files will be downloaded.
                    if (!File.Exists(localFilePath))
                    {
                        conn.DownloadFile(localFilePath, item.FullName);
                        //Do any action here.
                        Console.WriteLine(item.FullName);
                    }
                }
            }
        }
    }

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

Logic AppはファイルをFTPからBlobにコピーしますが、すでにコピーされたファイルは無視します

分類Dev

Pythonでftplibを使用してファイルをFTPサーバーに転送するときに「接続が拒否されました」

分類Dev

ほとんどすべてのブラウザが FTP サポートを削除した後、FTP URL をクリックするだけで FTP サーバーからファイルをダウンロードしますか?

分類Dev

libcurlを使用してftpサーバーのファイルサイズを取得するにはどうすればよいですか?

分類Dev

PHPを使用してZIPファイルをftp_get()する前に、FTPサーバーでZIPファイルをアーカイブします。

分類Dev

FtpWebResponseを使用してファイルをダウンロードする-ftpサーバーから削除した後でもファイルをダウンロードしますか?

分類Dev

FTP経由でサーバーにファイルをコピーした後のファイルサイズの違い

分類Dev

NiFiプロセッサを使用してFTPサーバーからファイルを削除するにはどうすればよいですか?

分類Dev

golangを使用してFTPサーバーからファイルをダウンロードするにはどうすればよいですか

分類Dev

指定された日付よりも長い変更日で、C#のFTPサーバーからローカルフォルダーにファイルをダウンロードします

分類Dev

PHPコードを使用してWebサーバー経由でアプリケーションからFTPサーバーにローカルファイルをアップロードします

分類Dev

サーバー名と拡張子を含むファイルをフォルダーで検索し、最後に変更されたファイルを選択して、ファイル名の日付を取得します

分類Dev

FTP:サーバーで最新のファイルを取得します

分類Dev

HTTP経由でアップロードされたファイルをASP.NETにアップロードし、さらにC#のFTPサーバーにアップロードします

分類Dev

'dd'を使用してファイルをデバイス全体(2tb hdd)にコピーした後、元のファイルを失うことなく、そこにさらにファイルを 'dd'できますか?

分類Dev

あるサーバーのファイルからテキストをコピーし、sshを使用して別のサーバーのファイルに追加するにはどうすればよいですか?

分類Dev

FTPサーバーでファイルサイズを取得し、ラベルに貼り付けます

分類Dev

リモートサーバーがエラーを返しました:(553)ファイル名は許可されていません[C#] [FTP]

分類Dev

Javaで複数のFTPクライアントを使用してFTPサーバーから同じファイルをフェッチする

分類Dev

FTP経由でファイルをサーバーにコピーするcronjob

分類Dev

Rust MongoDBドライバーを使用してGridFSに追加されたファイルからIDを取得するにはどうすればよいですか?

分類Dev

サーバー間で保護されたファイルを1行でコピーしますか?

分類Dev

FTPログファイルでFTPユーザーを検索し、それらを別のファイルにコピーするためのバッチファイル

分類Dev

RubyでFTPサーバーからファイルをダウンロードして保存できません

分類Dev

シェルスクリプトでscpまたはsftpを使用して、あるサーバーから別のサーバーにファイルをコピーするにはどうすればよいですか?

分類Dev

React Nativeを使用してFTPサーバーにファイルをアップロードするにはどうすればよいですか?

分類Dev

FTPを使用してディレクトリを変更し、ファイルをコピーするにはどうすればよいですか?

分類Dev

PHPを使用してLinuxマシンからFTPサーバーにファイルをアップロードすると、改行が2倍になります(ただし、Windowsでは機能します)

分類Dev

ftpサーバーでCurlを使用してファイルを解凍/解凍します

Related 関連記事

  1. 1

    Logic AppはファイルをFTPからBlobにコピーしますが、すでにコピーされたファイルは無視します

  2. 2

    Pythonでftplibを使用してファイルをFTPサーバーに転送するときに「接続が拒否されました」

  3. 3

    ほとんどすべてのブラウザが FTP サポートを削除した後、FTP URL をクリックするだけで FTP サーバーからファイルをダウンロードしますか?

  4. 4

    libcurlを使用してftpサーバーのファイルサイズを取得するにはどうすればよいですか?

  5. 5

    PHPを使用してZIPファイルをftp_get()する前に、FTPサーバーでZIPファイルをアーカイブします。

  6. 6

    FtpWebResponseを使用してファイルをダウンロードする-ftpサーバーから削除した後でもファイルをダウンロードしますか?

  7. 7

    FTP経由でサーバーにファイルをコピーした後のファイルサイズの違い

  8. 8

    NiFiプロセッサを使用してFTPサーバーからファイルを削除するにはどうすればよいですか?

  9. 9

    golangを使用してFTPサーバーからファイルをダウンロードするにはどうすればよいですか

  10. 10

    指定された日付よりも長い変更日で、C#のFTPサーバーからローカルフォルダーにファイルをダウンロードします

  11. 11

    PHPコードを使用してWebサーバー経由でアプリケーションからFTPサーバーにローカルファイルをアップロードします

  12. 12

    サーバー名と拡張子を含むファイルをフォルダーで検索し、最後に変更されたファイルを選択して、ファイル名の日付を取得します

  13. 13

    FTP:サーバーで最新のファイルを取得します

  14. 14

    HTTP経由でアップロードされたファイルをASP.NETにアップロードし、さらにC#のFTPサーバーにアップロードします

  15. 15

    'dd'を使用してファイルをデバイス全体(2tb hdd)にコピーした後、元のファイルを失うことなく、そこにさらにファイルを 'dd'できますか?

  16. 16

    あるサーバーのファイルからテキストをコピーし、sshを使用して別のサーバーのファイルに追加するにはどうすればよいですか?

  17. 17

    FTPサーバーでファイルサイズを取得し、ラベルに貼り付けます

  18. 18

    リモートサーバーがエラーを返しました:(553)ファイル名は許可されていません[C#] [FTP]

  19. 19

    Javaで複数のFTPクライアントを使用してFTPサーバーから同じファイルをフェッチする

  20. 20

    FTP経由でファイルをサーバーにコピーするcronjob

  21. 21

    Rust MongoDBドライバーを使用してGridFSに追加されたファイルからIDを取得するにはどうすればよいですか?

  22. 22

    サーバー間で保護されたファイルを1行でコピーしますか?

  23. 23

    FTPログファイルでFTPユーザーを検索し、それらを別のファイルにコピーするためのバッチファイル

  24. 24

    RubyでFTPサーバーからファイルをダウンロードして保存できません

  25. 25

    シェルスクリプトでscpまたはsftpを使用して、あるサーバーから別のサーバーにファイルをコピーするにはどうすればよいですか?

  26. 26

    React Nativeを使用してFTPサーバーにファイルをアップロードするにはどうすればよいですか?

  27. 27

    FTPを使用してディレクトリを変更し、ファイルをコピーするにはどうすればよいですか?

  28. 28

    PHPを使用してLinuxマシンからFTPサーバーにファイルをアップロードすると、改行が2倍になります(ただし、Windowsでは機能します)

  29. 29

    ftpサーバーでCurlを使用してファイルを解凍/解凍します

ホットタグ

アーカイブ