java FTPClient类 连接ftp 根据自己想匹配文字取出文件名

博主也很菜😂

需要jar包  commons-net-3.6.jar
地址    http://commons.apache.org/proper/commons-net/download_net.cgi

 

/**
 * 获取FTP文件名字
 * @param ftpClient       连接ftp
 * @param hostName        ip地址
 * @param port            端口
 * @param userName        用户名
 * @param passWord        密码
 * @param pathName        哪个路径下面文件的名字
 * @param containsVar     想要取出来的文件名包含哪些字     如果不需要 给 空 "" 就好    不能为:null
 * @return  返回的是一个list集合   里面存放的是 文件的名字
 * @throws IOException
 */
public List<String> listName(FTPClient ftpClient,String hostName, int port, String userName, String passWord, String pathName, String containsVar) throws IOException {
    /*ip地址    加    端口*/
    ftpClient.connect(hostName, port);
    /*  账号     密码       */
    ftpClient.login(userName, passWord);
    // 设置中文编码集,防止中文乱码
    ftpClient.setControlEncoding("UTF-8");
    // 获取"pathName"路径下面的文件名 将他们存为一个数组
    FTPFile[] ftpFiles = ftpClient.listFiles(pathName);
    /*存放匹配出来后的文件名*/
    List<String> list = new ArrayList<>();
    for (int i = 0; i < ftpFiles.length; i++) {
        //循环取出文件名称   .getName():是获取文件名称   
        String ftpFilesName = ftpFiles[i].getName();
        //判断是否有包含的文件名字
        boolean contains = ftpFilesName.contains(containsVar);
        //如果有将文件名字存入list集合
        if (contains) {
            list.add(ftpFilesName);
        }
    }
    return list;
}

========================示例========================

不喜勿喷,谢谢大家

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值