当前位置: 首页 > 面试题库 >

FTPClient-Java,上传文件

韩智明
2023-03-14
问题内容

我正在尝试做一个非常简单的文件上传。我想要一个Java
FTPClient,它可以上传我告诉它的任何文件。但是pdf总是一团糟,我的pdf编辑器(Adobe)不会打开它,说存在I / O错误。

我正在使用以下课程:

    import org.apache.commons.net.ftp.FTPClient;
    ....

    FTPClient client = new FTPClient();
    FileInputStream fis = null;

    try {
        client.connect("mydomain.com");
        client.login("user", "password");

        String filename = "myPDF.pdf";
        fis = new FileInputStream(filename);

        client.storeFile("temp.pdf", fis);
        fis.close();
        client.logout();
    } catch (IOException e) {
        e.printStackTrace();
    }

为什么此方法不起作用,如何解决?


问题答案:

这是行不通的,因为默认的传输模式FTPClient是FTP.ASCII_FILE_TYPE。您只需要更新配置即可以二进制模式传输。



 类似资料:
  • 问题内容: 我正在使用Apache Commons FTPClient 3.1进行简单的文件上传。storefile()适用于较小的文件(小于100MB),但是当我尝试上传大于100MB的文件时,它会完成上传但只是挂起。 我已经尝试过像其他人建议的那样进入被动模式,但这似乎无法解决问题。我尝试了多个FTP服务器,但结果相同,因此我猜它不是主机。 这是我在做什么的要点: 该程序在大型文件的第4行挂起

  • 问题内容: 我正在寻找Java小程序,以从客户端计算机读取文件并为PHP服务器上传创建POST请求。 服务器上的PHP脚本应将文件作为普通文件上传到FORM提交中。我正在使用以下代码。文件内容已传递到PHP脚本,但未正确转换为图像。 问题答案: 这是一些代码,可能会帮助您,它来自我的一个旧项目,其中删除了许多无关的内容,以物有所值。基本上,我认为您问题中的代码缺少HTTP协议要求的某些部分

  • 问题内容: 我正在使用Apache Commons FTPClient上传大文件,但是传输速度只是使用WinSCP通过FTP传输速度的一小部分。如何加快转移速度? 问题答案: 增加缓冲区大小:

  • 代码中的端口号必须与我尝试连接的FTP服务器(本例中为localhost)使用的端口号完全相同吗? 错误日志: java.net.ConnectException:连接被拒绝:在java.net.DualStackPlainSocketImpl.connect0(本机方法)在java.net.DualStackPlainSocketImpl.socketConnect(未知源)在java.net.

  • 问题内容: 我有一个问题,从选择a 获取将上述对象上传到具有此表结构的MySQL表 并且从该Java代码来看,该方法是该类的静态方法,其中它向所述MySQL数据库返回默认的DriverManager的新实例。另一件事,我使用的是包装而不是包装。 当我尝试运行该程序时,它返回错误,导致该行具有以下堆栈跟踪: 我该如何解决这个问题? 问题答案: 表示您的JDBC驱动程序未实现。 使用较旧的版本或更新驱

  • 本文向大家介绍java web图片上传和文件上传实例,包括了java web图片上传和文件上传实例的使用技巧和注意事项,需要的朋友参考一下 图片上传和文件上传本质上是一样的,图片本身也是文件。文件上传就是将图片上传到服务器,方式虽然有很多,但底层的实现都是文件的读写操作。 注意事项 1.form表单一定要写属性enctype="multipart/form-data" 2.为了能保证文件能上传成功