我正在尝试从具有FTP / SFTP连接的远程服务器中获取特定文件,而我遇到的问题是,我正在尝试以特定模式获取远程目录中的文件数。我正在使用口罩,但不适用于我,它抛出异常:
这就是我所拥有的
DataFile.sRemoteDirectory = "/user/ftpuser/test/";
receivepattern = "Del*";
filesCount =
session.ListDirectory(
session.EscapeFileMask(DataFile.sRemoteDirectory + receivepattern))
.Files.Where(x => !x.IsDirectory).Count();
最佳答案
这就是我所做的,并且有效!希望对某段代码有所帮助,我使用了正则表达式,其中receivepattern是使用的模式:
receivepattern = "^[\\d\\w]*" + receivepattern;
r = new Regex(receivepattern);
filesCount = session.ListDirectory(DataFile.sRemoteDirectory).Files.Where(x => !x.IsDirectory).Where(x => r.IsMatch(x.Name)).Count();