执于代码 2022-11-02 20:56 采纳率: 38.5%
浏览 11
已结题

common .net 包 ftp 下载不了

问题遇到的现象和发生背景

在ftp 下载文件时调用如下方法:出错

用代码块功能插入代码,请勿粘贴截图

```java
  public static boolean download(FtpConfig ftpConfig, String ftpPath, String fileName, String rename, String localPath) {
        boolean var5 = false;
        FTPClient var6 = new FTPClient();

        boolean var8;
        try {
            var6.connect(ftpConfig.getHost(), ftpConfig.getPort());
            var6.setControlEncoding("UTF-8");
            var6.login(ftpConfig.getUser(), ftpConfig.getPassword());
            int var7 = var6.getReplyCode();
            if (FTPReply.isPositiveCompletion(var7)) {
                var6.setFileType(2);
                var6.changeWorkingDirectory(ftpPath);
                var6.enterLocalPassiveMode();
                FTPFile[] var45 = var6.listFiles();
                FTPFile[] var9 = var45;
                int var10 = var45.length;

                for(int var11 = 0; var11 < var10; ++var11) {
                    FTPFile var12 = var9[var11];
                    if (fileName.equalsIgnoreCase(var12.getName())) {
                        File var13 = new File(localPath);
                        if (!var13.exists()) {
                            boolean var14 = var13.mkdirs();
                            LOG.info("创建目录{}{}", var13.getAbsolutePath(), var14);
                        }

                        File var46 = new File(localPath + (StringUtils.isEmpty(rename) ? var12.getName() : rename));
                        FileOutputStream var15 = new FileOutputStream(var46);
                        Throwable var16 = null;

                        try {
                            var6.retrieveFile(var12.getName(), var15);
                        } catch (Throwable var41) {
                            var16 = var41;
                            throw var41;
                        } finally {
                            if (var15 != null) {
                                if (var16 != null) {
                                    try {
                                        var15.close();
                                    } catch (Throwable var40) {
                                        var16.addSuppressed(var40);
                                    }
                                } else {
                                    var15.close();
                                }
                            }

                        }
                    }
                }

                var6.logout();
                var5 = true;
                return var5;
            }

            var8 = var5;
        } catch (Exception var43) {
            LOG.error("FTP download error", var43);
            return var5;
        } finally {
            if (var6.isConnected()) {
                try {
                    var6.logout();
                } catch (IOException var39) {
                    LOG.error("FTP logout error", var39);
                }
            }

        }

        return var8;
    }


运行结果及报错内容

一直报Software caused connection abort: socket write error

我想要达到的结果

能正确ftp 下载

  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2022-11-02 23:33
    关注
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 11月13日
  • 已采纳回答 11月5日
  • 创建了问题 11月2日

悬赏问题

  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度
  • ¥30 关于#r语言#的问题:如何对R语言中mfgarch包中构建的garch-midas模型进行样本内长期波动率预测和样本外长期波动率预测
  • ¥15 ETLCloud 处理json多层级问题
  • ¥15 matlab中使用gurobi时报错
  • ¥15 这个主板怎么能扩出一两个sata口
  • ¥15 不是,这到底错哪儿了😭
  • ¥15 2020长安杯与连接网探
  • ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么