0
我正在尋找一種方法,如果可能的話,連接到FTP服務器,然後遍歷本地文件列表以檢查它們在服務器上的存在。現在,我發現:檢查FTP服務器上是否存在文件列表
var request = (FtpWebRequest)WebRequest.Create("ftp://ftp.domain.com/doesntexist.txt");
request.Credentials = new NetworkCredential("user", "pass");
request.Method = WebRequestMethods.Ftp.GetFileSize;
try
{
var response = (FtpWebResponse)request.GetResponse();
}
catch (WebException ex)
{
var response = (FtpWebResponse)ex.Response;
if (response.StatusCode == FtpStatusCode.ActionNotTakenFileUnavailable)
{
//Does not exist
}
}
但是,如果我沒有理解錯的(我還沒有我的咖啡還),它會爲每個文件WebRequest
。總體目標是檢查這些文件是否存在,如果不存在,請上傳它們。我的問題是,我是否需要單獨做這件事,或者是否有可能(甚至是可行的)連接到FTP一次,然後進行檢查/上傳?
你可以得到FTP服務器上的文件的列表('ftpRequest.Method = WebRequestMethods.Ftp.ListDirectoryDetails;')和比較,爲本地文件。然後根據需要傳輸本地文件,每個連接一個。 – HABO