[list]
FTP上传文件长度为空的问题
这个问题是没有调用FTPClient的ftp.completePendingCommand();
原来在一个文件传输过程中会产生两个Reply:
150 Opening BINARY mode data connection for 上传文件的名字
226 Transfer complete.
而FTPClient自动消费掉一个,于是解析Reply就发生了错位, 下一个命令的会解析266那条. 接下来的命令都不是解析自己的Reply而是前一次命令的. 所有在PASV命令的Reply码就不对了, FTPClient也就不会执行接下来本应该执行RETR命令.
所以有时候当FTP传输文件的时候是没问题的(一般是第一次),后面的就会发生错位了。故文件传输后为0.
而FTPClient的completePendingCommand()方法就是用来把前面传输完毕的Reply清空的。
(因为我是使用SPRING来管理FtpServer这个类的,是单例,所以有上面的问题,如果传输一次就NEW一下,估计没这个问题。)
伪代码如下
try{
os=ftp.storeFileStream(File.separatorChar+folderName+fileName);
LogFactory.log("上传文件"+fileName+"至FTP服务器", Level.DEBUG, null);
if(os!=null){
int bytesRead = 0;
byte[] buffer = new byte[1024];
while((bytesRead=fileInputStream.read(buffer,0,1024))!=-1){
System.out.println("图片长度"+bytesRead);
os.write(buffer,0,bytesRead);
os.flush();
}
}
}catch(){
}finally{
//先关文件上传流
fileInputStream.close();
//再关FTP输入流
os.close();
//一定要加,否则上传至FTP服务器的文件可能长度为0
ftp.completePendingCommand();
}
[/list]
分享到:
相关推荐
nginx和ftp搭建图片服务器 一、需要的组件 图片服务器两个服务: Nginx(图片访问): 1、http服务:可以使用nginx做静态资源服务器。也可以使用apache。推荐使用nginx,效率更高。 2、反向代理 实现 负载均衡 ftp...
在WINFORM 框架下,实现对FTP服务器的图片上传,在线浏览和删除操作。 本代码为本人原创,希望对大家有帮助。
java实现FTP服务器,java实现FTP服务器
此demo是通过从相册中选择图片,剪切图片,然后上传到ftp服务器中。如果大家有问题的话,可以联系我,谢谢大家!
使用前端插件上传文件到ftp服务器,上传配置灵活,通过配置文件即可配置文件类型大小,还有ftp服务器连接信息
NULL 博文链接:https://qljobs.iteye.com/blog/666247
运用于分布式场景下的图片服务器,通过nginx+ftp联合搭建图片服务器集群,实现ftp服务存储图片,http服务图片资源拉取
传送图片至FTP服务器上,显示FTP上图片代码
这里可以根据远程图片地址,获取到图片并存储到本地或者本地服务器中,也可以并发把图片存储到本地数据库中
ftp 服务器上传图片中文乱码
本文档是Delphi类源码文档,Delphi客户端通过FTP服务器可以实现把本地图片上传到服务器,或把服务器上的图片下载到本地保存。
C#winform FTP图片上传下载
FTP服务器配置实验报告.docx
URL形式: // ...后台方法,将ftp服务器上的PDF文件转成二进制流进行读取 using System.Net; public FileStreamResult GetStreaem(strin
servlet 上传单一图片到ftp服务器 代码 可用
ftp服务器端 ftp服务器端源代码下载 简单的发图片服务器开发
JAVA 搭建FTP图片服务器的方法 服务器搭建方法在类注释里面 文件包括:JAVA端用于访问FTP服务器的方法不需要本地存储图片。文件附带2个所需jar包-commons-net.jar org.springframework.web.jar
destoon7设置远程FTP图片服务器,destoon7设置远程FTP图片服务器,destoon7设置远程FTP图片服务器
获取远程图片并保存图片到FTP服务器中
FTP服务器是在互联网上提供文件存储和访问服务的计算机,它们依照FTP协议提供服务。 本教程详细的介绍了FTP服务器的安装过程,同时还附有大量图片说明,是初学者搭建FTP服务器很好的辅助参考资料。