以下代码旨在获取一个文件(任何文件都不错,但是现在无论如何我都在使用图像),然后将其上传到我的服务器(行之有效的)。唯一的问题是图像在传输后非常歪斜。主要建议是使用FTPClient的setFileTranferMode到FTPClient.BINARY_FILE_TYPE,这…目前没有任何作用…
这是该方法的代码:
public void sendFile(File sendMe) throws IOException{
f.connect(ip);
f.login(username, password);
String recipient=null;
while(!f.changeWorkingDirectory(path+recipient)){
recipient=JOptionPane.showInputDialog("What is the name of the computer you are sending this to?");
}
f.changeWorkingDirectory(path+recipient);
f.setFileTransferMode(FTPClient.BINARY_FILE_TYPE);
f.storeFile(sendMe.getName(), new BufferedInputStream(new FileInputStream(sendMe)));
System.out.println("Stored!");
f.disconnect();
System.out.println("Uploaded");
}
一如既往,任何帮助将不胜感激!谢谢!
您没有使用正确的方法来设置文件类型。您应该改用setFileType。
f.setFileType(FTPClient.BINARY_FILE_TYPE);
我正在使用Apache commons net FTPClient作为批处理作业的一部分分发文件。客户端是封装的,但大致上我发出了以下方法调用(为了简洁起见,我省略了错误处理、流处理等): 当我发出上述命令时,会将以下命令发送到FTP服务器: 这个很好用。然而,现在我需要将文件发送到一个旧系统,该系统不支持或,而是分别依赖和。。 现在我的问题是,如何让FTPClient使用这些命令? 我可以使用方
我正在修改以前使用我自己编写的FTPS库的一些代码。我被要求开始使用ApacheCommonsNet库(主要是FTPClient和FTPSClient),但我在列出文件清单时遇到了问题。我已经阅读了其他问题,但这不是enterLocalPassiveMode问题(Apache Commons Net FTPClient和listFiles()),因为我在连接之后,但在登录之前使用它。同样的代码在我
问题内容: 我正在使用org.apache.commons.net.ftp.FTPClient,看到的行为令人困惑。 下面的方法打算浏览一个FTPFile列表,读入它们,然后对内容进行一些处理。都可以了 (真正)不起作用的是FTPClient对象执行以下操作… 有没有人看到这样的东西?我是FTPClient的新手,我在做错什么吗? 问题答案: 根据该API ,该方法返回时,它无法打开数据连接,在这
问题内容: 我们使用以下Apache Commons Net FTP代码连接到FTP服务器,轮询某些目录中的文件,如果找到文件,则将它们检索到本地计算机: 我们计划将其每分钟运行一次。当部署到Tomcat(7.0.19)时,此代码可以很好地加载并开始正常运行。但是,每次似乎都在 挂起 。我的意思是: 不存在堆转储 Tomcat仍在运行(我可以看到其pid并可以登录到Web Manager应用程序)
代码中的端口号必须与我尝试连接的FTP服务器(本例中为localhost)使用的端口号完全相同吗? 错误日志: java.net.ConnectException:连接被拒绝:在java.net.DualStackPlainSocketImpl.connect0(本机方法)在java.net.DualStackPlainSocketImpl.socketConnect(未知源)在java.net.
问题内容: 我正在尝试做一个非常简单的文件上传。我想要一个Java FTPClient,它可以上传我告诉它的任何文件。但是pdf总是一团糟,我的pdf编辑器(Adobe)不会打开它,说存在I / O错误。 我正在使用以下课程: 为什么此方法不起作用,如何解决? 问题答案: 这是行不通的,因为默认的传输模式FTPClient是。您只需要更新配置即可以二进制模式传输。