2017-08-18 1 views
0

いくつかのファイルを作成し、それらのファイルをSFTPを使用して一部のサーバーに送信するプロジェクトが私に割り当てられています。そのファイルを読んで別の場所(サーバーに送信されたファイルの最初のファイル)に送信する別のプログラムがあります。サーバーから新しいファイルを連続的にチェックして読み込み、送信します。問題は、そのサーバーに完全にインポートされていない2番目のプログラム読み取りファイルです。システムがクラッシュする原因となります。彼らは私に、ファイルを送信する前に最初のプログラムの変更を行うように教えて、最初にファイルの名前を変更し、アップロードした後、アップロードしたファイルの名前を再度変更します。これを可能にするか、これを行うより良い方法がありますか?私は親切にも私と共有することを求めているいくつかのアイデアを持っていますSFTPを使用してファイルの名前を変更

+0

を完了したので、あなたの質問は何ですか?タイトルごとに*「SFTPを使用してファイルの名前を変更する」*方法そのためには、SFTPライブラリを使用しているかどうかを知る必要があります。*または「これを行うことは可能ですか? - また、FTPとSFTPは全く異なる2つのプロトコルなので、どのプロトコルを使用しているかを確認して、タグの1つだけを使用してください。 –

+0

私が言及した最初のプログラムは親切な古いプログラムです。 FTPからFTPS、およびSFTPにアップグレードするのが時折あります。私が尋ねたのは、アップロードされたファイルの名前を変更することです。私が尋ねたより良い方法は、「名前を変更せずにシステムをクラッシュさせずにファイルをアップロードする方法がある」(正しくアップロードされていないファイルを選択しないようにする)です。私は私の悪い英語の先生のためのFTP。 –

答えて

1

それは良い同期方法です、私は転送中に一時的な名前を使用し、一度に名前を変更することを意味します。

実装は、プログラムでどのアプローチを使用したかによって異なります。 それはこのようなものでなければなりません:

// Rename the file or directory: 
    success = sftp.RenameFileOrDir("oldFilename.txt","newFilename.txt"); 
    if (success != true) { 
     Console.WriteLine(sftp.LastErrorText); 
     return; 
    } 

基本的には:

  1. 転送のイベントをキャッチが
  2. 要求RENAMEコマンドを
関連する問題