文件上传成功 但是内容为空 需要加上 ftpClient.enterLocalPassiveMode();
代码如下:

package com.zhuoshi.jcbigdata.spark.jinjingzheng;import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;import org.apache.commons.net.ftp.FTP;
import org.apache.commons.net.ftp.FTPClient;
import org.apache.commons.net.ftp.FTPReply;
import org.junit.Test;/*** 实现FTP文件上传和文件下载*///xml上传ftp
public class FtpClient {private static FTPClient ftpClient = new FTPClient();private static String encoding = System.getProperty("file.encoding");//获取当前文件的格式编码/*** Description: 向FTP服务器上传文件* * @Version1.0* @param url*            FTP服务器hostname* @param port*            FTP服务器端口* @param username*            FTP登录账号* @param password*            FTP登录密码* @param path*            FTP服务器保存目录,如果是根目录则为“/”* @param filename*            上传到FTP服务器上的文件名* @param input*            本地文件输入流* @return 成功返回true,否则返回false*/public static boolean uploadFile(String url, int port, String username,String password, String path, String filename, InputStream input) {boolean result = false;try {int reply;// 如果采用默认端口,可以使用ftp.connect(url)的方式直接连接FTP服务器ftpClient.connect(url);// ftp.connect(url, port);// 连接FTP服务器// 登录ftpClient.login(username, password);ftpClient.enterLocalPassiveMode();ftpClient.setControlEncoding(encoding);// 检验是否连接成功reply = ftpClient.getReplyCode();if (!FTPReply.isPositiveCompletion(reply)) {System.out.println("连接失败");ftpClient.disconnect();return result;}// 转移工作目录至指定目录下if(path==null||path.equals("")) {//如果path为空 存在根目录下path="/";}boolean change = ftpClient.changeWorkingDirectory(path);ftpClient.setFileType(FTP.BINARY_FILE_TYPE);if (change) {result = ftpClient.storeFile(new String(filename.getBytes("GBK"),"iso-8859-1"), input);if (result) {System.out.println("上传成功!");}}input.close();ftpClient.logout();} catch (IOException e) {e.printStackTrace();} finally {if (ftpClient.isConnected()) {try {ftpClient.disconnect();} catch (IOException ioe) {}}}return result;}/*** 将本地文件上传到FTP服务器上* */@Testpublic void testUpLoadFromDisk() {try {FileInputStream in = new FileInputStream(new File("D:/JJZWF/xxx.xml"));boolean flag = uploadFile("url", 21, "passname","password", "/", "xxx.xml", in);System.out.println(flag);} catch (FileNotFoundException e) {e.printStackTrace();}}
}

参考文档
http://www.bubuko.com/infodetail-985948.html
本站系本人编辑转载,转载目的在于传递更多信息,并不代表本人赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与本人联系,我将在第一时间删除内容![声明]本站文章版权归原作者所有 内容为作者个人观点 本站只提供参考并不构成任何投资及应用建议。

java ftp上传文件内容为空相关推荐

  1. java ftp 上传文件到服务器,java实现ftp上传文件到服务器

    java实现ftp上传文件到服务器 内容精选 换一换 怎样上传文件到Windows操作系统云服务器?安装传输工具在本地主机和Windows云服务器上分别安装数据传输工具,将文件上传到云服务器.例如QQ ...

  2. java ftp上传文件相关代码梳理

    java实现ftp文件上传 1.ftp文件上传步骤 1)连接ftp 2)检查工作目录是否存在 3)检查是否上传成功 4)完成任务后,断开ftp 2.具体如下,直接贴上核心代码: A)导入核心pom依赖 ...

  3. java ftp上传文件0字节_FTP上传无文件以及0字节问题

    这几天在做一个FTP上传文件的功能,在本地运行完全没有问题,上传文件成功,图片成功显示.在公网(centos系统)上进行测试的时候就出了问题了,上传一直卡到storeFile上,一般是会卡住30-60 ...

  4. java ftp 上传文件 无效_java实现FTP文件上传出现的问题

    昨天用JAVA写了一个实现FTP文件上传功能的类(是通过sun.net.ftp包实现的,此包为SUN的私有类包,所以官方没有提供相关API文档),然后进行了简单的测试. 具体类代码如下(此类的部分方法 ...

  5. java ftp上传文件 linux_Java实现把文件上传至ftp服务器

    用Java实现ftp文件上传.我使用的是commons-net-1.4.1.zip.其中包含了众多的java网络编程的工具包. 1 把commons-net-1.4.1.jar包加载到项目工程中去. ...

  6. java ftp 上传文件 进度条_java FTP上传文件(进度条显示进度)

    java实现FTP上传有2种方式,一种是org.apache.commons.net.ftp.FTPClient这个jar包,一种是sun.net.ftp.FtpClient.不知道为什么,在使用前一 ...

  7. JAVA FTP 上传文件

    下面展示通过http 方式上传文件到服务器: /** 文件上传接口 @param request[module][filename] @param response @throws IOExcepti ...

  8. java ftp上传文件_jaVA使用FTP上传下载文件的问题

    为了实现 FTP上传下载,大概试了两个方法 sun.net.ftp.FtpClient org.apache.commons.net 一开始使用sun.net.ftp.FtpClient,结果发现唯一 ...

  9. linux sftp 上传文件内容为空,求linux 下 C/c++ 实现SFTP上传文件的代码,或shell 写的如何区分上传是否成功?...

    如题求linux系统下C/C++实现SFTP上传文件的代码,最好有一定的中文注释,谢谢了. 或是, 我看FTP上传的shell写的比较简单,但是,如何能判断是否上传成功哪?? 如果想做上传的进度条的话 ...

最新文章

  1. Socketserver 笔记
  2. C语言访问内部ROM,C语言随笔2: rom ram 及其运行的过程
  3. pycharm 如何使用git链接到github实现代码提交
  4. android 短信注册,Android注冊短信验证码功能
  5. MySQL(6)视图
  6. 小学计算机集体备课,小学信息技术集体备课.doc
  7. 大手笔!EDG夺冠TCL奖励300万,还送全系AI家电一套
  8. wxpython 优秀的界面剂_珠海界面剂
  9. UVa 10815 - Andy's First Dictionary
  10. 64位系统装32和64位oracle,64位系统安装32位Oracle developer
  11. 芯片破壁者(十五):仙童半导体和“八叛逆”所缔造的“硅谷模式”
  12. 细说10月24号为什么是程序员的节日?
  13. 什么是CI/CD,以及我所熟知的CI/CD工具都是有哪些?
  14. 若依项目的项目名称自定义修改
  15. Excel制作饼图的法宝!Smartbi可视化工具图表制作
  16. 消除笔哪个p图软件有?快把这些软件收好
  17. Rancher2.6 Monitoring Grafana 对接 LDAP
  18. python函数的传参(bert_vocab_from_dataset),函数括号里面含有**是什么意思?
  19. D.E. Shaw:“股涨债跌”的幕后操手竟是各国央行?
  20. QQ聊天框变成方框口口口口的解决办法

热门文章

  1. 【2015盘点】这些手游如何“霸榜”
  2. 中国首份国际贸易企业信息化发展白皮书发布,小满科技后劲十足
  3. 写一个音乐播放器的微信小程序
  4. Go是Google的语言,而不是我们的语言
  5. 华为语音解锁设置_华为手机语音转文字怎么设置,如何完成音频在线转换
  6. 倾情分享:Android 开发者们不要错过的网站宝藏~
  7. “杜拉拉思维模式”之五:面试礼仪速成
  8. 毕业设计 - 题目:基于机器视觉的图像矫正 (以车牌识别为例) - 图像畸变校正
  9. jQuery-获取/设置 属性(标准属性,自定义属性)和内容
  10. KBQA知识总结(学习笔记)