ASP.如何检查ftp服务器上是否存在文件?
本文关键字:服务器 是否 存在 文件 ftp 何检查 检查 ASP | 更新日期: 2023-09-27 18:17:58
我正在做一个ASP。. NET MVC 5.1网站,我需要显示的图片,如果它存在于ftp服务器(CDN)。文件夹名和文件名与规则相关联,因此我事先知道它们。如果这个文件不存在,我需要显示一条消息。
如何检查该文件是否存在?
建议重复(验证文件是否存在于c#中)没有帮助,因为我需要检查文件是否存在于远程服务器上,而不是本地文件夹。
试试下面的代码
string destination = "ftp://something.com/";
string file = "test.jpg";
string extention = Path.GetExtension(file);
string fileName = file.Remove(file.Length - extention.Length);
string fileNameCopy = fileName;
int attempt = 1;
while (!CheckFileExists(GetRequest(destination + "//" + fileNameCopy + extention)))
{
fileNameCopy = fileName + " (" + attempt.ToString() + ")";
attempt++;
}
// do your upload, we've got a name that's OK
}
private static FtpWebRequest GetRequest(string uriString)
{
var request = (FtpWebRequest)WebRequest.Create(uriString);
request.Credentials = new NetworkCredential("", "");
request.Method = WebRequestMethods.Ftp.GetFileSize;
return request;
}
private static bool checkFileExists(WebRequest request)
{
try
{
request.GetResponse();
return true;
}
catch
{
return false;
}
}
FTP引用检查文件是否存在