CN104301438A - 一种上传文件的方法 - Google Patents
一种上传文件的方法 Download PDFInfo
- Publication number
- CN104301438A CN104301438A CN201410618077.5A CN201410618077A CN104301438A CN 104301438 A CN104301438 A CN 104301438A CN 201410618077 A CN201410618077 A CN 201410618077A CN 104301438 A CN104301438 A CN 104301438A
- Authority
- CN
- China
- Prior art keywords
- file
- compressed
- server
- bag
- subfile
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种上传文件的方法,该方法包括:获取需要上传的压缩文件放入待压缩包;获取终端与服务器之间的可用带宽;预设允许上传时间;根据可用带宽与允许上传时间计算出流量;在待压缩包内将压缩文件根据流量值拆分成若干个子文件包;将子文件包进行排序、标记;将压缩后的子文件包分别上传至服务器;在服务器上下载所述压缩后的子文件包,将压缩的子文件包合并成压缩包;所述需要上传的压缩文件包括未上传成功的子文件包。本发明可以实现子文件的个数和大小可以依据使用者进行设定,将拆分文件的数量最少化,并且充分满足了使用者的需求,减少了在下载过程中的等待时间,实现了文件的快速传输。
Description
技术领域
本发明涉及一种文件上传方法,特别地,涉及一种基于FTP协议的上传文件的方法。
背景技术
随着社会科技与经济的飞速发展,网络化的信息交换已经成为生活工作中的一部分,而网络信息交换最常用的方法将是以文件方式传输这些信息,网络文件传输的方法有多种,其中最常见的有FTP的工具、P2P类的工具、或邮件技术的工具等等。
FTP的工具可以将文件传输到一台服务器上,然后另外一个用户通过FTP软件再从服务器上把文件下载下来,而这个过程出现的问题为只有上传文件的用户需要把文件上传完毕,另外一个用户才能下载。FTP的主要作用,就是让用户连接上一个远程计算机(这些计算机上运行着FTP服务器程序)察看远程计算机有哪些文件,然后把文件从远程计算机上拷到本地计算机,或把本地计算机的文件送到远程计算机去;标准的FTP协议在传输文件的过程中必须把一个文件传输完成,其他客户端才能下载。
另外,对于P2P类的工具可以完成直接把一个文件传输到另外一台终端用户的机器上的功能,但该工具需要两个用户同时在线,并且由于其传输过程是点对点进行的,因此不需要服务器,所以无服务端记录。
总之,本领域技术人员需要解决的问题就是,在FTP服务器上,如何迅速的上传和下载文件,且能够保证在上传过程中减少下载端的等待时间。
发明内容
本发明的目的是提供一种能够在上传过程中减少下载端的等待时间,并能够基于上传文件的方法。
为达到上述目的,本发明公开了一种上传文件的方法,该方法包括:
获取需要上传的压缩文件放入待压缩包;
获取终端与服务器之间的可用带宽;
预设允许上传时间;
根据可用带宽与允许上传时间计算出流量;
在待压缩包内将压缩文件根据流量值拆分成若干个子文件包;
将子文件包进行排序、标记;
将压缩后的子文件包分别上传至服务器;
在服务器上下载所述压缩后的子文件包,将压缩的子文件包合并成压缩包;
所述需要上传的压缩文件包括未上传成功的子文件包;
所述可用带宽指的是有效的传输速率,反映了当时的网络条件,是指每秒钟传输的最大字节数。
进一步,所述文件包括文字、图片或视频文件。
进一步,所述服务器为FTP服务器,设置在计算机上。
进一步,所述预设允许时间是一个可调整的时间轴。
进一步,所述预设允许时间可以是1分钟。
进一步,采用windows RAR拆分所述需要上传的压缩文件。
进一步,所述获取终端与服务器之间的有效带宽,包括:
发送预设大小的测量包给所述服务器,并从零开始计时,当接收到所述服务器返回的应答消息时停止计时,根据所述测量包的大小和所述计时的时间计算出所述终端与服务器之间的有效带宽。
进一步,还包括在FTP服务器上使用FTP协议上传文件。
与现有技术相比,本发明具有以下优点:与现有技术相比,本发明具有以下优点:
当需要通过FTP传输一个大文件时,首先对文件进行压缩,再进行拆分,传输拆分后的子文件,从而有效地解决了在传输大文件过程中,下载方需要等待传输完成后才能下载的问题。
即在本发明中将压缩函数和拆分函数结合,将需要上传的文件在压缩的同时拆分为对应的子文件,并将该子文件上传,同时在远程访问的FTP服务器的另一端可以实现下载相对应的子文件,将下载后的子文件进行组合,进而获得所需要的文件。
本发明可以实现子文件的个数和大小可以依据使用者进行设定,将拆分文件的数量最少化,并且充分满足了使用者的需求,减少了在下载过程中的等待时间,实现了文件的快速传输。
附图说明
图1为本发明的文件上传流程示意图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明;为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
本发明的核心构思在于,将拆分函数应用于文件传输的过程中,在压缩文件的同时将所述文件进行拆分,在传输过程中实现:上传文件的同时,在服务器的另一端,下载文件并自动将所述子文件组合为原文件。
本发明公开了一种上传文件的方法,该方法包括:
获取需要上传的压缩文件放入待压缩包;
获取终端与服务器之间的可用带宽;
预设允许上传时间;
根据可用带宽与允许上传时间计算出流量;
在待压缩包内将压缩文件根据流量值拆分成若干个子文件包;
将子文件包进行排序、标记;
将压缩后的子文件包分别上传至服务器,并查看是否上传成功,;
在服务器上下载上传成功的子文件包,将压缩的子文件包合并成压缩包;
所述可用带宽指的是有效的传输速率,反映了当时的网络条件,是指每秒钟传输的最大字节数;
所述需要上传的压缩文件包括未上传成功的子文件包,即对于未上传成功的再次启动上传程序,从上述方法的第一个步骤开始。
进一步,所述文件包括文字、图片或视频文件。
进一步,所述服务器为FTP服务器,设置在计算机上。
进一步,所述预设允许时间是一个可调整的时间轴。
进一步,所述预设允许时间可以是1分钟。
进一步,采用windows RAR拆分所述需要上传的压缩文件。
进一步,所述获取终端与服务器之间的有效带宽,包括:
发送预设大小的测量包给所述服务器,并从零开始计时,当接收到所述服务器返回的应答消息时停止计时,根据所述测量包的大小和所述计时的时间计算出所述终端与服务器之间的有效带宽。
进一步,还包括在FTP服务器上使用FTP协议上传文件。
图1所示为本发明的文件上传流程示意图,其中文件上传的主要步骤包括:
步骤A1:启动上传的程序;
步骤A2:获取需要上传的压缩文件放入待压缩包,生成上传列表;
步骤A3:获取终端与服务器之间的可用带宽;
步骤A4:预设允许上传时间;
步骤A5:根据可用带宽与允许上传时间计算出流量;
步骤A6:在待压缩包内将压缩文件根据流量值拆分成若干个子文件包;
步骤A7:将子文件包进行排序、标记;:
步骤A8:文件校验,计算大文件和拆分后的小文件的MD5码,即取文件MD5和复制文件到临时文件夹;
步骤A9:压缩文件;
步骤A10:拆分文件,采用windows RAR将所述需要上传的压缩文件进行拆分;其中拆分的子文件在同一个原压缩文件的压缩包里,并没有分开许多单个的压缩包;
步骤A11:访问文件续传接口,生成子文件列表;
步骤A12:上传子文件,并查看是否上传成功,在此过程中,若上传失败,可将上传失败的文件放在重新循环上传程序即回到步骤1;上传过程中依据默认的次序进行各个子文件的传输;
步骤A13:当有单个的子文件上传成功时,需要注册并校验文件;
步骤A14:子文件传输完毕,即单次上传任务完成,使用者可以根据自己的需要删除临时文件或保存临时文件,结束整个文件的传输。
以上实施方式仅用于说明本发明,而并非对本发明的限制,有关技术领域的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明的范畴,本发明的专利保护范围应由权利要求限定。以上实施方式仅用于说明本发明,而并非对本发明的限制,有关技术领域的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明的范畴,本发明的专利保护范围应由权利要求限定。
Claims (8)
1.一种上传文件的方法,其特征在于,包括:
获取需要上传的压缩文件放入待压缩包;
获取终端与服务器之间的可用带宽;
预设允许上传时间;
根据可用带宽与允许上传时间计算出流量;
在待压缩包内将压缩文件根据流量值拆分成若干个子文件包;
将子文件包进行排序、标记;
将压缩后的子文件包分别上传至服务器;
在服务器上下载所述压缩后的子文件包,将压缩的子文件包合并成压缩包;
所述需要上传的压缩文件包括未上传成功的子文件包。
2.如权利要求1所述的上传文件的方法,其特征在于,所述文件包括文字、图片或视频文件。
3.如权利要求1所述的上传文件的方法,其特征在于,所述服务器为FTP服务器,设置在计算机上。
4.如权利要求1所述的上传文件的方法,其特征在于,所述预设允许时间是一个可调整的时间轴。
5.如权利要求1所述的上传文件的方法,其特征在于,所述预设允许时间可以是1分钟。
6.如权利要求1所述的方法,其特征在于,采用windows RAR拆分所述需要上传的压缩文件。
7.如权利要求1所述的上传文件的方法,其特征在于,所述获取终端与服务器之间的有效带宽,包括:
发送预设大小的测量包给所述服务器,并从零开始计时,当接收到所述服务器返回的应答消息时停止计时,根据所述测量包的大小和所述计时的时间计算出所述终端与服务器之间的有效带宽。
8.如权利要求1所述的上传文件的方法,其特征在于,在FTP服务器上使用FTP协议上传文件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410618077.5A CN104301438A (zh) | 2014-07-25 | 2014-11-06 | 一种上传文件的方法 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410356438.3 | 2014-07-25 | ||
CN201410356438 | 2014-07-25 | ||
CN201410618077.5A CN104301438A (zh) | 2014-07-25 | 2014-11-06 | 一种上传文件的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104301438A true CN104301438A (zh) | 2015-01-21 |
Family
ID=52321001
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410618077.5A Pending CN104301438A (zh) | 2014-07-25 | 2014-11-06 | 一种上传文件的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104301438A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104580533A (zh) * | 2015-02-05 | 2015-04-29 | 中国农业银行股份有限公司 | 一种交易文件的下发方法及装置 |
CN105262830A (zh) * | 2015-10-30 | 2016-01-20 | 北京奇艺世纪科技有限公司 | 一种文件上传方法及装置 |
CN106603614A (zh) * | 2015-10-20 | 2017-04-26 | 北京国双科技有限公司 | 文件传输方法和装置 |
CN107908781A (zh) * | 2017-12-05 | 2018-04-13 | 深圳市乐宜科技有限公司 | 一种便捷无需更新app版本发布不同版本电子杂志的方法 |
CN110401723A (zh) * | 2019-08-16 | 2019-11-01 | 北京浪潮数据技术有限公司 | Ova文件上传服务器的方法、***、设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101179392A (zh) * | 2006-12-12 | 2008-05-14 | 腾讯科技(深圳)有限公司 | 一种上传文件的方法和*** |
CN101610196A (zh) * | 2008-06-16 | 2009-12-23 | 杭州看吧科技有限公司 | 一种运用点阵结构实现数据快速上传、下载的***和方法 |
CN103607468A (zh) * | 2013-11-29 | 2014-02-26 | 深圳市金立通信设备有限公司 | 一种上传文件的方法及终端 |
CN103825945A (zh) * | 2014-02-25 | 2014-05-28 | 华为技术有限公司 | 一种分片存储方法及用户终端 |
-
2014
- 2014-11-06 CN CN201410618077.5A patent/CN104301438A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101179392A (zh) * | 2006-12-12 | 2008-05-14 | 腾讯科技(深圳)有限公司 | 一种上传文件的方法和*** |
CN101610196A (zh) * | 2008-06-16 | 2009-12-23 | 杭州看吧科技有限公司 | 一种运用点阵结构实现数据快速上传、下载的***和方法 |
CN103607468A (zh) * | 2013-11-29 | 2014-02-26 | 深圳市金立通信设备有限公司 | 一种上传文件的方法及终端 |
CN103825945A (zh) * | 2014-02-25 | 2014-05-28 | 华为技术有限公司 | 一种分片存储方法及用户终端 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104580533A (zh) * | 2015-02-05 | 2015-04-29 | 中国农业银行股份有限公司 | 一种交易文件的下发方法及装置 |
CN104580533B (zh) * | 2015-02-05 | 2018-06-19 | 中国农业银行股份有限公司 | 一种交易文件的下发方法及装置 |
CN106603614A (zh) * | 2015-10-20 | 2017-04-26 | 北京国双科技有限公司 | 文件传输方法和装置 |
CN105262830A (zh) * | 2015-10-30 | 2016-01-20 | 北京奇艺世纪科技有限公司 | 一种文件上传方法及装置 |
CN105262830B (zh) * | 2015-10-30 | 2018-08-07 | 北京奇艺世纪科技有限公司 | 一种文件上传方法及装置 |
CN107908781A (zh) * | 2017-12-05 | 2018-04-13 | 深圳市乐宜科技有限公司 | 一种便捷无需更新app版本发布不同版本电子杂志的方法 |
CN110401723A (zh) * | 2019-08-16 | 2019-11-01 | 北京浪潮数据技术有限公司 | Ova文件上传服务器的方法、***、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9979784B2 (en) | Method for cloud data backup and recovery | |
CN104301438A (zh) | 一种上传文件的方法 | |
CN107483627A (zh) | 一种文件分发、下载方法、分发服务器、客户端及*** | |
CN102355426B (zh) | 实现离线文件传输的方法和*** | |
CN108933805A (zh) | 一种文件传输方法及*** | |
CN102708192B (zh) | 一种文档共享的方法及***、设备 | |
CN103605798A (zh) | 一种直接操作云端存储文件的方法 | |
CN102447636A (zh) | 一种数据中心通讯设备的负载分担方法和装置 | |
WO2019051628A1 (zh) | 一种文件分发、下载方法、分发服务器、客户端及*** | |
CN101179392A (zh) | 一种上传文件的方法和*** | |
CN105472083A (zh) | 无线终端的测试方法及*** | |
CN104079623B (zh) | 多级云存储同步控制方法及*** | |
CN101150593A (zh) | 一种上传数据的方法及*** | |
CN103368951B (zh) | 文件下载方法及*** | |
CN102882960B (zh) | 一种资源文件的发送方法及装置 | |
CN103944949A (zh) | 文件上传的方法和***、以及云存储设备 | |
US11138287B1 (en) | System for reducing size of transmitted content | |
CN103345523B (zh) | 一种基于云计算的审稿*** | |
CN105721520A (zh) | 一种文件同步方法及装置 | |
KR101876822B1 (ko) | 메타 정보 기반의 클라우드 서비스 방법 | |
CN110460668A (zh) | 一种文件上传方法、装置、计算机设备和存储介质 | |
CN103888513A (zh) | 服务器端多文件下载方法及*** | |
CN103188327A (zh) | 一种文件传输方法及*** | |
CN104050204A (zh) | 合并网络数据的方法及移动装置 | |
CN109213955A (zh) | 数据处理方法及相关设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: Five, building 4, E2 building, 430074 E City, Optics Valley, Wuhan Software Development Zone, East Lake, Hubei, China Applicant after: Language network (Wuhan) Information Technology Co., Ltd. Address before: Five, building 4, E2 building, 430074 E City, Optics Valley, Wuhan Software Development Zone, East Lake, Hubei, China Applicant before: Wuhan Transn Information Technology Co., Ltd. |
|
CB02 | Change of applicant information | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20150121 |
|
RJ01 | Rejection of invention patent application after publication |