我正在尝试将多个文件从服务器(特定目录说/ x /)FTP到本地目录。我知道我想要FTP的文件的名称,有没有办法在一个命令中FTP所有驻留在服务器的特定目录中的文件,如" mget()" unix中的命令。
目前我正在做以下事情
using (WebClient ftpClient = new WebClient())
{
ftpClient.Credentials = // credentials
ftpClient.DownloadFile("ftp://<ftp ip>//x//y//" + "x0.txt", @"D:\\test\\x\\" + "check" + "_a0.txt");
ftpClient.DownloadFile("ftp://<ftp ip>//x//y//" + "x1.txt", @"D:\\test\\x\\" + "check" + "_a1.txt");
ftpClient.DownloadFile("ftp://<ftp ip>//x//y//" + "x2.txt", @"D:\\test\\x\\" + "check" + "_a2.txt");
}
每次想要下载/复制文件到本地目录时都会建立FTP连接。
即使我按照以下命令
读取目录内容reqFTP.Method = WebRequestMethods.Ftp.ListDirectory;
response = reqFTP.GetResponse();
reader = new StreamReader(response.GetResponseStream());
string line = reader.ReadLine();
while (line != null)
{
if (line.Contains("xyz"))
{
result.Append(line);
result.Append("\n");
}
line = reader.ReadLine();
}
然后单独下载每个文件,它仍然会调用每个文件到FTP到本地目录。我正在寻找能够匹配模式的东西,例如&#34; wildcard&#34;并在一个命令中下载与模式或通配符匹配的所有文件。
提前感谢所有帮助。
由于