日期:2014-05-20  浏览次数:20669 次

如何解决FTP连接超时问题?
在开发中需要使用ftp进行文件操作.
操作如下:下载文件-> 本地处理文件(长时间)-> 上传处理结果-> 关闭ftp连接.

在上传处理结果时我还是用的下载文件时的ftp连接.但如果处理文件时间过长,上次的那个连接就因超时而关闭了,因此我想在每次进行ftp操作时判断一下当前的ftp连接是否可用,如果不可用就在新建立连接.

可如何判断呢?

在测试时使用
if(!ftp.serverIsOpen())
{
  connectFtp();//连接ftp的操作
}
可是不行,因为即使我将ftp服务停止了,ftp.serverIsOpen()依旧返回true.

请问高手是如何解决.

我想在每次进行ftp操作时,不管当前的连接是和状态一律关闭,然后重新连接,如下:
try{
ftp.closeServer();
}
catch(Exception   e)
{
}
finally
{
ftp.connectFTP();
}
这样可以吗?对ftp的性能有何影响?



------解决方案--------------------
设置连接的超时时间长一点就是了。
------解决方案--------------------
从网上搞个断点续传的,每次传完以后生成一个结束文件,每次判断这个结束文件就知道时候传完了,没传完就续传