java将图片上传到ftp
2017-05-26 15:14
330 查看
//创建ftpClient对象
FTPClient ftpClient= new FTPClient();
//创建ftp链接,默认是21端口
ftpClient.connect("139.199.90.60",21);
//登录ftp服务器,使用用户名和密码
ftpClient.login("ftpuser", "chen429736");
//上传文件
//读取本地文件
FileInputStream inputStream=new FileInputStream(new File("F://Cache//1.png"));
ftpClient.setFileType(FTP.BINARY_FILE_TYPE);
//加了这句解决
ftpClient.enterLocalPassiveMode();
ftpClient.setFileType(FTPClient.BINARY_FILE_TYPE);
ftpClient.setBufferSize(65535);
//设置上传的路径
ftpClient.changeWorkingDirectory("/home/ftpuser/www/images");
//修改上传格式
//第一个参数:服务器端文档名
//第二个参数,上传文档的inputStream
ftpClient.storeFile("rest.png", inputStream);
//关闭链接
ftpClient.logout();
//java.net.SocketTimeoutException: Read timed out
调用FTPClient.enterLocalPassiveMode();这个方法的意思就是每次数据连接之前,ftp client告诉ftp server开通一个端口来传输数据。为什么要这样做呢,因为ftp server可能每次开启不同的端口来传输数据,但是在linux上,由于安全限制,可能某些端口没有开启,所以就出现阻塞。
可是有一件事特别奇怪,就是同事在登录正式环境,上传文件,报错java.lang.NullPointerException ,可是在本地代码运行过程中,根本不会出现这个问题,但是当解决了本地上传问题后,这个问题就复现了出来,你猜是什么,原来是密码输入不正确!哎。。。。
相关文章推荐
- CKEditor3.x 在Java项目中配置、包括图片上传(支持FTP、图片压缩)
- CKEditor 3.x 在Java中配置、包括图片上传、支持FTP、图片压缩
- java使用ftp局域网内多线程上传图片过慢
- Java上传图片到FTP服务器
- 使用JAVA在线下载图片至本地,并上传至FTP
- java FTP方式上传文件到图片服务器
- ftp重启后,java调用ftp上传图片,无法登陆ftp
- java代码上传图片到FTP服务器——图像“ftp://****/images/**.jpg"因存在错误而无法显示
- JAVA实现图片下载至缓存处理后,再上传FTP
- java POI导出excel(带有图片的数据)以及ftp上传图片到另一台服务器的方法参考代码
- CKEditor 3.x 在Java中配置、包括图片上传、支持FTP、图片压缩
- java使用FTPClient 上传图片文件到服务器
- CKEditor 3.x 在Java中配置、包括图片上传、支持FTP、图片压缩
- CKEditor 3.x 在Java中配置、包括图片上传、支持FTP、图片压缩
- Java项目中使用FTP与SFTP上传图片
- java js 文件图片通过FTP进行上传和同步
- cool-2018-01-17-java+nginx+ftp实现图片上传和下载
- 在Java-web中实现图片上传到ftp图片服务器
- java代码使用ftp上传图片失败的一个问题
- 已解决:java使用FTP上传图片,在Windows下可以用,到linux下就不能用了