SFTP读取目录中的所有文件 [英] SFTP Read all files in directory

查看:7495
本文介绍了SFTP读取目录中的所有文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我使用SFTP创建了一个成功的连接 com.jcraft.jsch

I have created a successful connection using SFTP com.jcraft.jsch

我还创建了一个目录文件夹在 HostDir 下: channelSftp.mkdir(sftp.test);

I also created a directory folder under HostDir like: channelSftp.mkdir("sftp.test");

现在我想读取主机目录下的所有文件/文件夹名称,我没有看到任何合适的方法或示例。

Now i want to read all file/folder names under host directory, I do not see any appropriate method or example.

谢谢

推荐答案

使用此功能完成..

ChannelSftp sftp = (ChannelSftp) channel;
sftp.cd(hostDir);
Vector<String> files = sftp.ls("*");
for (int i = 0; i < files.size(); i++)
{
    Object obj = files.elementAt(i);
    if (obj instanceof com.jcraft.jsch.ChannelSftp.LsEntry)
    {
        LsEntry entry = (LsEntry) obj;
        if (true && !entry.getAttrs().isDir())
        {
            ret.add(entry.getFilename());
        }
        if (true && entry.getAttrs().isDir())
        {
            if (!entry.getFilename().equals(".") && !entry.getFilename().equals(".."))
            {
                ret.add(entry.getFilename());
            }
        }
    }
}
System.out.println(ret);

这篇关于SFTP读取目录中的所有文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆