cftp断点上传
‘壹’ 什么ftp工具最好用,并且支持断点续传
FlashFXP v3.40 多国语言版
功能强大的 FXP / FTP 软件,融合了一些其他优秀 FTP 软件的优点,如像 CuteFTP 一样可以比较文件夹,支持彩色文字显示;像 BpFTP 支持多文件夹选择文件,能够缓存文件夹;像 LeapFTP一样的外观界面,甚至设计思路也差相仿佛。支持文件夹(带子文件夹)的文件传送、删除;支持上传、下载及第三方文件续传;可以跳过指定的文件类型,只传送需要的文件;可以自定义不同文件类型的显示颜色;可以缓存远端文件夹列表,支持FTP 代理及 Socks 3 & 4;具有避免空闲功能,防止被站点踢出;可以显示或隐藏“隐藏”属性的文件、文件夹;支持每个站点使用被动模式等。!
http://www.crsky.com/soft/1183.html
‘贰’ C# FTP上传断点续传~
参考:http://blog.csdn.net/jiankunking/article/details/50017009
里面有FTP模式的上传、下载(包括断点续传)的所有需要的代码。
包括可能需要的IIS部署服务教程和调用的示例都很详细。拷贝下来基本上就可以用(如果不是windows应用程序,可以把原文进度条那段删掉或者改成自己要用的代码)。
‘叁’ 有人有代码linux下的FTP服务器,使用C或者C++开发;实现文件的上传、下载、断点续传。在线等,谢谢!
妈呀,直接下个ftpd的代码改改呗?
要不 FileZilla Server 什么的
都开源
何必苦做伸手党?
‘肆’ FTP该如何实现断点续传
客户端的实现步骤如下:
一、下载:
1、向服务器发送“REST + 本地文件长度”命令,告诉服务器,客户端要断点下载了。这时服务器还不知道客户端要下载哪个文件;
要实现FTP的断点续传,FTP服务器必须支持REST指令,这条指令在FTP协议文本RFC959中就已经定义了,不过它不是FTP服务器必须支持的指令。一般,你可以在下载前使用REST 100命令进行实验,如果服务器正常执行了这条命令,说明该服务器支持FTP断点续传。REST后面跟的数表示下载文件的起始位置,而REST 0表示从文件最开始处下载。REST命令本身并不执行下载功能,你仍需要使用RETR命令执行下载工作。
2、向服务器发送“RETR + 文件名”命令,通知服务器要下载的文件名,这时服务器开始定位文件指针读文件并发送数据。
3、客户端定位本地文件指针(文件末尾);
4、两端的准备工作都做完了以后,客户端创建socket,以被动或非被动方式建立数据通道,循环调用recv接收数据并追加入本地文件;
二、上传:
1、获取服务器上和本地要上传文件的同名文件大小;
2、向服务器发送“APPE + 文件名”,通知服务器,接下来从数据通道发送给你的数据要附加到这个文件末尾。
3、定位本地文件指针(和FTP上文件大小相同的位置)
4、从文件指针处读数据并发送。
代码里将断点上传和断点下载放到同一个函数(MoveFile)里,通过get参数说明是上传还是下载。
‘伍’ FTP上传时经常中断,怎么办
通过FTP传输工具来上传下载资源是有很多优势的,可以断点续传而且还可以自动传输,速度方面也有保障。但是这位网友遇到的问题却比较少见。访问FTP后通过具备权限的帐户上传数据,开始一切正常,但是过了几秒后就出现“传送失败”的提示,同时分析FLASHFXP提示的错误信息为“426 data connection cloased,error decompressing data stream”。同时左边传输列表中的任务显示为红叉,数据不再传输。
由于我们已经能够使用该帐户登录FTP并传输数据,所以在帐号权限上是没有任何问题的,FTP服务器应该也是正常运行的。接下来我们可以尝试使用其他FTP工具或者直接用IE浏览器访问该服务器。通过IE浏览器一般可以解决传输问题,毕竟IE浏览器是最基本最原始的FTP登录和数据传输工具。 如果IE浏览器可以顺利访问那么出问题的就肯定是Flashfxp工具了,这时我们需要从以下几个方面下手排查故障。 第一步:启动Flashfxp,然后通过主菜单的“选项”->“参数配置”来设置传送模式,默认应该是“自动”,不过这种自动模式很可能造成通讯解码的错误,从而引发中断问题。因此我们可以针对此问题在“传送模式”下进行修改,从“自动”切换为使用“ASCII”字符传送,确定保存后再次尝试上传即可。 第二步:如果问题依旧的话那么我们就只能够被动的提高继续传输次数来解决上传必须手工修改任务状态的问题。通过“站点管理器”找到要登录的站点,然后找到“高级”标签,将其下的“续传支持”修改为“是”,应用后再次尝试即可。 第三步:如果还是不能够解决FTP上传中断的问题,我们还可以通过“选项”->“参数配置”来更改重新尝试传送的次数,正因为默认上传尝试的次数为三次,所以我们上传数据时经过三次中断后就自动将该任务重置为“失败”了,我们不得不手工重置任务为“正常”,再继续任务才行。当然如果我们把“重试失败的传送”次数修改为99或者更多,那么Flashfxp会自动在失败后重新尝试传输,从而解决了必须手工操作的问题。 第四步:经过设置后就算在上传过程中出现“426 data connection cloased,error decompressing data stream”造成传送失败,我们也不用担心了,Flashfxp会自动继续传输。 小提示: 出现上述错误提示实际上是当上传文件大小为0的空文件时,系统自动提示上传失败。然而实际上该文件名在服务器上已经创建,因此这个问题是FlashFxp客户端软件的误报错。
‘陆’ ftp 命令可以断点续传吗
二、上传: 1、获取服务器上和本地要上传文件的同名文件大小; 2、向服务器发送“APPE + 文件名”,通知服务器,接下来从数据通道发送给你的数据要附加到这个文件末尾。 3、定位本地文件指针(和FTP上文件大小相同的位置) 4、从文件指针处读数据并发送。 好 了,FTP断点续传的原理就这么简单。代码里将断点上传和断点下载放到同一个函数(MoveFile)里,通过get参数说明是上传还是下载。当然,整个 FTP类的实现有800多行,包括登录、退出、获取FTP文件大小、删除FTP服务器上文件、响应服务器,解析响应信息等函数。相应的注释代码里都有,这 里就不一一熬述了。
这里重点说说PASV模式,即被动模式,这是FTP命令里比较不容易理解的一个,这条命令请求服务器在某个端口(非FTP默认端口或控制命令端口)创建一个监听socket,服务器创建的端口号会在客户端的控制命令通道上得到响应。得到这个端口号后,客户端就可以创建新的 socket(数据通道)
connect过去,并进行文件传输等工作。否则,如果为非被动模式,那么监听的socket由客户端创建,服务器connect过来。 对于这条命令的存在我是这么理解的,存在这么一种情况:客户端的IP是个内网的IP,服务器的IP是个外网的,当进行数据传输时内网的IP对于服务器是不可见的,只有由服务器启动监听socket才能建立数据通道,所以必须以被动模式进行。:)
‘柒’ 什么是FTP断点续传
有时用户通过FTP下传文件需要历时数小时,万一线路中断,不具备FTP断点续传的FTP服务器就只能从头重传;中国万网“虚拟主机”上的FTP服务器具有FTP断点续传能力,允许用户从上传断线的地方继续传动,这样大大减少了用户的烦恼。
‘捌’ FTP体系中,什么是断点续传,有何用途
断点续传就是当你正在下载东西时,由于突发的一些事情,或自己有事导致电脑关机。当你下次再去下载同一个东西时,它会自动的从上一次下载的地方接着下,而不是重头开始下载。现在迅雷和网际快车都支持断点续传