首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >ssh.net检查文件扩展名

ssh.net检查文件扩展名
EN

Stack Overflow用户
提问于 2015-02-11 05:32:56
回答 3查看 3.3K关注 0票数 0

我使用SSH.NET库连接到sftp服务器,并设法从服务器下载文件。在服务器中有很多文件类型,我只需要下载CSV文件。如何检查文件扩展名GetExtension是否在SSH.NET中工作。非常感谢您的帮助。

代码语言:javascript
运行
复制
            foreach (var file in files)
            {
                if (!file.Name.StartsWith("."))
                {
                    string remoteFileName = file.Name;

                    using (Stream fileStream = System.IO.File.OpenWrite(Path.Combine(sFilePath, file.Name)))
                    {
                        sftp.DownloadFile(file.FullName, fileStream);
                    }

                }
            }
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-06-24 05:19:41

我找到了一个解决方案,我在这里发布它是为了帮助像我这样有同样问题的人。

代码语言:javascript
运行
复制
 string fname = file.Name;
 string ext = fname.Substring(fname.Length - 4, 4);

 if (ext == ".csv")
 {
     //code goes here
 }
票数 1
EN

Stack Overflow用户

发布于 2015-09-22 06:21:47

我有一个进程下载了很多以".rpt“结尾的文件。在我的例子中,我关心最近的文件,但无论哪种方式,这段代码都能很好地工作。ConnectionInfo c=新PasswordConnectionInfo(主机、端口、userName、密码);

代码语言:javascript
运行
复制
        var sftp = new SftpClient(c);

        List<SftpFile> allFiles = sftp.ListDirectory(directory).ToList().OrderByDescending(f => f.LastWriteTime).ToList();
        var fileNames = allFiles.Where(f => f.Name.EndsWith("csv")).Select(f => f.Name).ToList();
票数 3
EN

Stack Overflow用户

发布于 2016-05-11 13:59:18

不如像..。

代码语言:javascript
运行
复制
ConnectionInfo c = new PasswordConnectionInfo(host,port,username,password);
var sftp = new SftpClient(c);
string remote= "/FromServer/"

sftp.Connection();
Console.WriteLine("Connected to {0}", host); // Just to help keep track of things
sftp.ChangeDirectory(remote); 

Console.WriteLine("Changed directory to {0}", remote);// You should see your repository with this

  var allFilenames = Directory.EnumerateFiles(remote).Select(p => Path.GetFileName(p));
        var withext = allFilenames
                           .Where(fn => Path
                               .GetExtension(fn) == ".csv")
                                     .Select(fn => Path.GetFileName(fn));

记得把这些家伙也加进去..。using Renci.SshNet; using Renci.SshNet.Sftp;

希望这会有帮助!)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28447249

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档