本发明涉及数据传输,并且更具体地,涉及一种断点续传方法及系统。
背景技术:
1、目前利用jls协议和zlls协议实现文件断点续传,这种方法适用于基于web网站浏览器方式或文件下载工具方式对文件进行下载,大文件上传因文件过大或者中途网络中断而导致失败。
技术实现思路
1、根据本发明,提供了一种断点续传方法及系统,以解决大文件上传因文件过大或者中途网络中断而导致失败的技术问题。
2、根据本发明的第一个方面,提供了一种断点续传方法,包括:
3、当多线程文件在传输过程中断时,记录断点位置,保存本地下载信息,建立临时文件来保存本地下载信息,所述本地下载信息包含各线程已下载字节数,文件的指针和文件的大小信息;
4、当接收到继续传输指令后,建立连接,判断临时文件是否存在本地下载信息;
5、如果存在,读取已下载的所述本地下载信息,根据记录的断点位置,将文件指针定位在未完成线程的断点位置,从断点处传输每个线程的剩余部分的数据。
6、可选地,当传输中断时,记录断点位置之前,还包括:
7、判断多线程文件在传输时是否中断。
8、可选地,所述方法还包括:
9、将所述多线程文件分片进行传输。
10、可选地,将所述多线程文件分片进行传输,包括:
11、每接收到一个文件分片就写入一个新建的临时文件;
12、当接收到文件合并请求后,将所有临时文件按照顺序合并成一个文件并删除原先的分片临时文件。
13、可选地,包括:将所述多线程文件分片进行传输,包括:
14、接收到文件开始上传请求后,建立一个临时文件;
15、每接收到一个文件分片就将分片内容追加到临时文件末尾,当接收到文件发送完毕的请求后,文件上传成功。
16、根据本发明的另一个方面,还提供了一种断点续传系统,包括:
17、建立临时文件夹模块,用于当多线程文件在传输过程中断时,记录断点位置,保存本地下载信息,建立临时文件来保存本地下载信息,所述本地下载信息包含各线程已下载字节数,文件的指针和文件的大小信息;
18、判断本地下载信息模块,用于当接收到继续传输指令后,建立连接,判断临时文件是否存在本地下载信息;
19、传输剩余部分数据模块,用于如果存在,读取已下载的所述本地下载信息,根据记录的断点位置,将文件指针定位在未完成线程的断点位置,从断点处传输每个线程的剩余部分的数据。
20、可选地,建立临时文件夹模块,还包括:
21、判断中断子模块,用于判断多线程文件在传输时是否中断。
22、可选地,所述系统还包括:
23、分片传输模块,用于将所述多线程文件分片进行传输。
24、可选地,分片传输模块,包括:
25、写入临时文件子模块,用于每接收到一个文件分片就写入一个新建的临时文件;
26、合并临时文件子模块,用于当接收到文件合并请求后,将所有临时文件按照顺序合并成一个文件并删除原先的分片临时文件。
27、可选地,分片传输模块,包括:
28、建立临时文件子模块,用于接收到文件开始上传请求后,建立一个临时文件;
29、追加文件分片子模块,用于每接收到一个文件分片就将分片内容追加到临时文件末尾,当接收到文件发送完毕的请求后,文件上传成功。
30、从而,能够实现文件的断点续传功能。基于分块上传的断点续传突破了浏览器端对于文件上传大小的限制,可以上传任意大小的文件,并且对实现文件的断点续传提供了一种新的思路,突破了目前文件上传的各种限制。解决了以往大文件上传因文件过大或者中途网络中断而导致失败的问题。
1.一种断点续传方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,当传输中断时,记录断点位置之前,还包括:
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
4.根据权利要求3所述的方法,其特征在于,将所述多线程文件分片进行传输,包括:
5.根据权利要求3所述的方法,其特征在于,包括:将所述多线程文件分片进行传输,包括:
6.一种断点续传系统,其特征在于,包括:
7.根据权利要求6所述的系统,其特征在于,建立临时文件夹模块,还包括:
8.根据权利要求7所述的系统,其特征在于,包括:
9.根据权利要求8所述的系统,其特征在于,分片传输模块,包括:
10.根据权利要求6所述的系统,其特征在于,分片传输模块,包括: