`
beyondbn
  • 浏览: 74255 次
社区版块
存档分类
最新评论

用FTPClient,执行到ftp.storeFile(fileName, inputFile);无反应了

 
阅读更多

Q:用FTPClient,执行到ftp.storeFile(fileName, inputFile);无反应了

A:  ftpclient.enterLocalPassiveMode();

ftp.storeFile(fileName, inputFile);问题解决

原因是:FTP协议有两种工作方式:PORT方式和PASV方式,中文意思为主动式和被动式。 PORT(主动)方式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请 求,服务器接受连接,建立一条命令链路。当需要传送数据时,客户端在命令链路上用PORT 命令告诉服务器:“我打开了XXXX端口,你过来连接我”。于是服务器从20端口向客户端的 XXXX端口发送连接请求,建立一条数据链路来传送数据。 PASV(被动)方式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请 求,服务器接受连接,建立一条命令链路。当需要传送数据时,服务器在命令链路上用PASV 命令告诉客户端:“我打开了XXXX端口,你过来连接我”。于是客户端向服务器的XXXX端口 发送连接请求,建立一条数据链路来传送数据。

分享到:
评论

相关推荐

    java利用FTPClient实现上传下载文件.doc

    ftp.storeFile(filename, input); input.close(); ftp.logout(); success = true; } catch (IOException e) { e.printStackTrace(); } finally { if (ftp.isConnected()) { try { ftp.disconnect(); } ...

    ftp文件传输.zip

    5. **文件传输**:`FTPClient.storeFile(filename, input)`用于上传文件,其中`input`是文件的输入流;`FTPClient.retrieveFile(filename, output)`用于下载文件,`output`是文件的输出流。 6. **退出会话**:完成...

    Java使用ftp

    ftp.storeFile(filename, input); ``` 上传完成后记得关闭输入流: ```java input.close(); ``` 7. **退出登录** 使用`logout()`方法退出FTP会话: ```java ftp.logout(); ``` 8. **断开连接** 最后,...

    java FTPClient 文件上传下载文件

    通过使用`FTPClient`,开发者可以方便地建立与FTP服务器之间的连接,并执行诸如上传、下载等操作。 #### 三、基本配置 使用`FTPClient`前,需要完成一些基本的配置步骤: 1. **添加依赖**:首先,确保项目中已经...

    Domino_java代理实现FTP上传下载

    if (ftp.storeFile(sSaveFilename, input)) { success = "true"; } else { success = "上传文件到 FTP 服务器时出错!"; } } else { success = "FTP 服务器保存目录错误!"; } // 关闭输入流 input.close...

    java文件上传至ftp服务器的方法

    ftp.storeFile(filename, input); input.close(); ftp.logout(); success = true; } catch (IOException e) { e.printStackTrace(); } finally { if (ftp.isConnected()) { try { ftp.disconnect(); } ...

    JAVA中使用FTPClient实现文件上传下载实例代码

    6. **存储文件**:`ftp.storeFile(filename, input);` 使用`InputStream`作为数据源,将文件上传到FTP服务器。`filename`是目标文件名。 7. **关闭输入流**:`input.close();` 文件上传完成后,关闭输入流。 8. **...

    android传送照片到FTP服务器的实现代码

    下面我们将详细讲解如何在Android应用中使用FTPClient上传照片到FTP服务器。 首先,确保在项目中添加Apache Commons Net依赖。在Android Studio的build.gradle文件中,添加以下依赖项: ```groovy dependencies { ...

    Java FTPClient实现文件上传下载

    5. 使用`storeFile(filename, input)`上传文件,`filename`是服务器上文件的名称,`input`是包含待上传文件数据的`InputStream`。 6. 关闭输入流,确保资源被正确释放。 7. 退出登录,调用`logout()`。 8. 最后,...

    java使用ftp上传文件示例分享

    - 使用`storeFile(String filename, InputStream input)`方法将文件内容存入FTP服务器,传入远程文件名和包含文件内容的输入流。 6. **异常处理**:在上传过程中可能会遇到网络问题、权限问题等,因此需要捕获并...

Global site tag (gtag.js) - Google Analytics