none
FTP 上傳時如何讓上傳的檔案跟來源的檔案最後修改日期時間一樣呢 RRS feed

  • 問題

  •  public void Upload(string fileName, string uploadUrl)
      {
       Stream requestStream = null;
       FileStream fileStream = null;
       FtpWebResponse uploadResponse = null;
    
       mErrorNo = (int)cBFTP_Error.ERROR_NULL;
       mErrorMsg = "";
    
       try
       {
        FtpWebRequest uploadRequest = (FtpWebRequest)WebRequest.Create(uploadUrl);
        if (mAccount.Length > 0)
        {  //如果有設定帳號密碼
         uploadRequest.UseBinary = true;
         uploadRequest.Credentials = new NetworkCredential(mAccount, mPW);
        }
        uploadRequest.Method = WebRequestMethods.Ftp.UploadFile;
     
        uploadRequest.Proxy = null;
    
        requestStream = uploadRequest.GetRequestStream();
        fileStream = File.Open(fileName, FileMode.Open);
    
        byte[] buffer = new byte[1024];
        int bytesRead;
        
        while (true)
        {
         bytesRead = fileStream.Read(buffer, 0, buffer.Length);
         if (bytesRead == 0)
          break;
         requestStream.Write(buffer, 0, bytesRead);
        }
        
    
        // The request stream must be closed before getting 
        // the response.
        requestStream.Close();
    
        uploadResponse = (FtpWebResponse)uploadRequest.GetResponse();
        Console.WriteLine("Upload complete.");
       }
       catch (UriFormatException ex)
       {
        mErrorNo = (int)cBFTP_Error.URI_FORMAT_EXCEPTION_ERROR;
        mErrorMsg = ex.Message;
       }
       catch (IOException ex)
       {
        mErrorNo = (int)cBFTP_Error.IO_EXCEPTION_ERROR;
        mErrorMsg = ex.Message;
       }
       catch (WebException ex)
       {
        mErrorNo = (int)cBFTP_Error.WEB_EXCEPTION_ERROR;
        mErrorMsg = ex.Message;
       }
       finally
       {
        if (uploadResponse != null)
         uploadResponse.Close();
        if (fileStream != null)
         fileStream.Close();
        if (requestStream != null)
         requestStream.Close();
       }
      }
    

    上面是上傳的函數  

    請問我該如何改才能讓上傳的檔案跟來源檔案最後修改日期一樣呢

    也就是原本我要上傳的檔案最後修改日期為 2011-04-04 18:00:00

    傳上去FTP伺服器的檔案也要跟我來源的檔案日期一樣為 2011-04-04 18:00:00 而不是上傳的時間

    請懂的大大提示一下 謝謝


    2011年5月5日 下午 12:53

解答

  • FTP 沒有更改 Server 檔案時間的指令...
    論壇是網友平等互助 保證解答請至 微軟技術支援服務
    提問時,錯誤情境描述與錯誤訊息很重要,情境描述包含你做了什麼,預期的結果與實際發生的結果。一個最爛的問法範例:「我的電腦電腦怎麼不能開機?」誰知道你家是不是沒電還是你根本找不到電源鈕。
    • 已提議為解答 阿尼 2011年5月6日 上午 01:35
    • 已標示為解答 Brady Wang 2011年5月9日 上午 01:25
    2011年5月5日 下午 01:16

所有回覆

  • FTP 沒有更改 Server 檔案時間的指令...
    論壇是網友平等互助 保證解答請至 微軟技術支援服務
    提問時,錯誤情境描述與錯誤訊息很重要,情境描述包含你做了什麼,預期的結果與實際發生的結果。一個最爛的問法範例:「我的電腦電腦怎麼不能開機?」誰知道你家是不是沒電還是你根本找不到電源鈕。
    • 已提議為解答 阿尼 2011年5月6日 上午 01:35
    • 已標示為解答 Brady Wang 2011年5月9日 上午 01:25
    2011年5月5日 下午 01:16
  • 可是有看過一套FTP 軟體真的有做到這樣 (SyncBackPro)

    所以想說是否有什麼方式可以做到這點...

    2011年5月6日 上午 06:39
  • 你可以用封包監聽軟體去看他送啥,或是去看 RFC 文件是不是有這命令。
    論壇是網友平等互助 保證解答請至 微軟技術支援服務
    提問時,錯誤情境描述與錯誤訊息很重要,情境描述包含你做了什麼,預期的結果與實際發生的結果。一個最爛的問法範例:「我的電腦電腦怎麼不能開機?」誰知道你家是不是沒電還是你根本找不到電源鈕。
    2011年5月6日 下午 03:32