社区
网络及通讯开发
帖子详情
一个关于FTP的问题,文件切割上传
Sumel
2005-10-10 08:50:59
小弟现在要做一个FTP上传的功能,对于多文件多线程已实现,现在的问题是:如果上传的某个文件很大(>2M)想采取把文件分割成几块,然后采用多线程上传。文件分割知道怎么做,现在就是上传,还有上传后文件如何组合?小弟采用IdFTP控件,不知是否合适?各位高手大哥有什么好的建议,请不吝赐教~~谢谢~~
...全文
430
11
打赏
收藏
一个关于FTP的问题,文件切割上传
小弟现在要做一个FTP上传的功能,对于多文件多线程已实现,现在的问题是:如果上传的某个文件很大(>2M)想采取把文件分割成几块,然后采用多线程上传。文件分割知道怎么做,现在就是上传,还有上传后文件如何组合?小弟采用IdFTP控件,不知是否合适?各位高手大哥有什么好的建议,请不吝赐教~~谢谢~~
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
fbms3
2005-10-11
打赏
举报
回复
用indy的话就不要管了。她自己的设置就是最好的。
netsys2
2005-10-10
打赏
举报
回复
一个文件在电脑是怎样存在的?
---->按扇区存储的,(在google中查询)
所以我们能设置一个或几个点把文件给分割了?
---->随便你怎么分都可以!反正fopen后可以fseek
比如一个600M的视频或什么文件,怎么存在的?
---->存为一个大文件,至于这个文件是怎么存放和管理的,是操作系统的事,
不需要你关心,你只需要fopen它,然后fseek到想要的位置,然后fread就可以
了!
Sumel
2005-10-10
打赏
举报
回复
谢谢netsys2大哥的留言,正在看Postel & Reynolds 写的RFC959(关于FTP协议,全是英文,好吃力,呵呵),想到什么疑问,再讨论^_^
还有一个相关的问题,一个文件在电脑是怎样存在的?二进制代码,所以我们能设置一个或几个点把文件给分割了?比如一个600M的视频或什么文件,怎么存在的?从微观和宏观都解释一下,谢谢哪个知道的高手大哥^_^
netsys2
2005-10-10
打赏
举报
回复
FTP是基于TCP的协议,TCP是一个“流协议”,就是说两边开好通道后,一边
按次序不断发送,另一边连续接收。
之所以要设置SendBufferSize,是因为由于通信处理的原因,如果发送太快,
对方接收不了,需要重传,浪费资源。
实际上你不用关心这个。按缺省的就可。
如果上传的文件比较大,FTP CLIENT会逐块读取文件数据,然后发送到对方,不
需要你干预,你只需要告诉它发送什么文件就可以了。它会自动发送,如果发送
失败,会告诉你,你需要重传。(注意,有的FTP SERVER不支持断点续传的)
Sumel
2005-10-10
打赏
举报
回复
谢谢各位高手大哥的留言
我在查看IdFTP组件的相关知识是看到:
SendBufferSize说明(默认值为32768字节):该属性也为整型变量,用于指定连接所用的发送缓冲区的最大值。该属性在WriteStream方法中时,可用于TStream指定要发送内容的块数。如果要发送的内容大于本属性值,则发送内容被分为多个块发送。
如果上传的文件比较大,FTP是怎样上传这个大文件呢?
还有哪个大哥知道IdFTP组件的详细说明,告一声,谢谢^.^
constantine
2005-10-10
打赏
举报
回复
下载倒是可以,上传不行,都不支持,你不如倒过来,把原来的服务器跟客户端交换,下多线程断点下载就一样了,^_^
我不懂电脑
2005-10-10
打赏
举报
回复
文件合并的话,需要自己实现,ftp本身是不支持的。
binbin
2005-10-10
打赏
举报
回复
下载多线程还差不多,利用断点续传功能多个线程从不同断点下载.上传的话FTP服务器不支持文件合并FTP协议里好象没有规定.你得用其他方式写一个server程序运行在同一服务器上,用你自己的协议控制这个server合并文件
netsys2
2005-10-10
打赏
举报
回复
如果FTP SERVER是你自己做的,就容易实现,否则不行。
实际上你没有必要用FTP这样做。FTP单线程还是很快的,并且大多都支持断点续传!
如果你非得要多点传输,换自己的SERVER试试
shadowstar
2005-10-10
打赏
举报
回复
大多数网络服务都是主要提供下载的,所以上传没办法提高效率,而且实际意义也不大。
Sumel
2005-10-10
打赏
举报
回复
那么,做一个FTP客户端,当上传的文件很大时,应该如何做,提高传输效率?就是尽量在短时间内传完,各位高手大哥有什么高见?
FTP
多线程
切割
文件
传输
FTP
多线程
切割
文件
传输,
实现
ftp
文件
分割,加密解密
上传
文件
由于自己最近项目做到大
文件
传输,最大支持5个G的
文件
传输,并且每天定时传输
文件
,基于此需求自己开发的
一个
完整项目,现在分享给需要的朋友。支持定时传输,
文件
分割合并,断点续传,aes加密解密,md5
文件
校验完整性。客户端实现
文件
分割,加密,服务端实现
文件
解密,合并。异地项目访问采用的是http协议,客户端根据http协议访问服务端对应的方法,返回
一个
json,客户端解析json,得到返回状态,判断下一步执行什么操作。
BIN
文件
切割
器
可以将大的BIN
文件
切割
成若干个小的BIN
文件
。
Android Studio实现
FTP
分割
文件
上传
Android Studio编写的实现
FTP
分割
文件
上传
例子。(大
文件
可以分割成小
文件
上传
)
java大
文件
分块
上传
断点续传demo
完整的java大
文件
分块
上传
支持断点续传,包含jar包,可以直接导入eclipse使用。
网络及通讯开发
1,317
社区成员
8,874
社区内容
发帖
与我相关
我的任务
网络及通讯开发
C++ Builder 网络及通讯开发
复制链接
扫一扫
分享
社区描述
C++ Builder 网络及通讯开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章