使用WinSCP .NET程序集列出具有特定扩展名的文件
我正在使用WinSCP .NET程序集进行下载,并使用C#.NET通过SFTP上传。 我有下载function,但我正在寻找一种方法来列出远程服务器中的文件(或至少列出具有特定扩展名),因此用户只需要选择具有特定扩展名的文件(如.txt
)获取他们想要的文件。
有没有办法用WinSCP .NET程序集来做到这一点?
使用Session.ListDirectories
方法 :
RemoteDirectoryInfo directory = session.ListDirectory("/home/martin"); foreach (RemoteFileInfo fileInfo in directory.Files) { string extension = Path.GetExtension(fileInfo.Name); if (string.Compare(extension, ".txt", true) == 0) { Console.WriteLine("Adding {0} to listing", fileInfo.Name); } }
或者Session.EnumerateRemoteFiles
方法 :
IEnumerable fileInfos = session.EnumerateRemoteFiles("/home/martin", "*.txt", EnumerationOptions.None); foreach (RemoteFileInfo fileInfo in fileInfos) { Console.WriteLine("Adding {0} to listing", fileInfo.Name); }
是的,您可以使用RemoteFileInfo
和RemoteDirectoryInfo
类来获取远程文件和目录详细信息。 然后,根据您的要求,您可以使用自定义逻辑来检索特定文件。
关于这里的更多信息。