System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种基于IO流的文件传输方法及装置制造方法及图纸_技高网

一种基于IO流的文件传输方法及装置制造方法及图纸

技术编号:40562168 阅读:8 留言:0更新日期:2024-03-05 19:25
本发明专利技术提供了一种基于IO流的文件传输方法及装置,该方法包括:S101,生成压缩文件,所述压缩文件包括待传输的视频和/或图片;S103,根据预设的分片大小对所述压缩文件进行切片;S105,根据分片后的文件输出所述压缩文件的MD5值;S107,将所述压缩文件的MD5值发送给服务器,所述服务器查询数据库文件表是否存在相同的MD5值,如果存在,停止上传压缩文件;如果不存在,执行以下步骤;S109,将分片文件信息发送给服务器做校验,通过校验,只上传未上传的分片。本发明专利技术提升了文件上传速度,即使是分片上传失败,也只需要上传失败的分片,无需上传整个文件,为无人机拍摄的图片、视频传输存储做出了保障。

【技术实现步骤摘要】

本专利技术属于文件传输领域,具体而言,涉及一种基于io流的文件传输方法及装置。


技术介绍

1、两碳即碳达峰与碳中和的简称,在两碳的大背景下,光伏行业蓬勃发展,为提高运维效率,加入无人机巡检,智能识别故障;因此需要大量拍摄图片、视频存储。现有技术中,文件上传大部分是直接将文件存储到服务器,存在以下问题:1、上传超时(大文件上传时间会超出前端框架、网关代理设置的请求时间);2、大文件压缩超时;3、大小超限制(超出默认的文件大小上限);4、当遇到文件过大,或者网络延迟等问题时,就会上传失败,且上传失败后需要将整个文件重新上传,效率低且可能一直上传失败。


技术实现思路

1、本申请提供了一种基于io流的文件传输方法及装置,解决了无人机拍摄的图片、视频上传超时,大小超出限制,上传速度慢等问题。

2、第一方面,本申请提供了一种基于io流的文件传输方法,包括:

3、s101,生成压缩文件,所述压缩文件包括待传输的视频和/或图片;

4、s103,根据预设的分片大小对所述压缩文件进行切片;

5、s105,根据分片后的文件输出所述压缩文件的md5值;

6、s107,将所述压缩文件的md5值发送给服务器,所述服务器查询数据库文件表是否存在相同的md5值,如果存在,停止上传压缩文件;如果不存在,执行以下步骤;

7、s109,将分片文件信息发送给服务器做校验,通过校验,只上传未上传的分片。

8、其中,s101,生成压缩文件,所述压缩文件包括待传输的视频和/或图片,包括:

9、通过jszip获取zip对象,向zip对象中添加视频和/或图片,通过generateasync来生成压缩文件。

10、其中,s103,根据预设的分片大小对所述压缩文件进行切片,包括:

11、预设分片大小,根据分片大小来对压缩文件进行切片,如果压缩文件小于等于预设分片大小,则不进行切片,否则继续调用切片算法直到切片文件小于等于预设分片大小,停止切割。

12、其中,s105,根据分片后的文件输出所述压缩文件的md5值,包括:

13、将分片后的文件逐个传入spark.appendbinary方法来计算,最后通过spark.end方法输出md5值。

14、其中,s109,将分片文件信息发送给服务器做校验,通过校验,只上传未上传的分片,包括:

15、将分片文件信息发送给服务器做校验,分片文件信息包括文件名、文件大小、分片总数量、分片编号、分片内容;

16、服务器通过分片编号和md5值来判断该分片是否上传过,并告知前端,如果上传过,前端不再上传该分片,如果没有上传过,则上传该分片。

17、其中,还包括:

18、服务器保存上传的分片信息至分片表;

19、服务器通过数据库已存在的分片数量和分片总数做对比,如果一致则认为压缩文件上传完毕,将md5值一致的分片拿出来,通过分片编号来排序,按照排序结果合并文件。

20、其中,还包括:文件合并后写入文件表,文件表中记录文件信息及md5值。

21、其中,所述分片编号为文件名哈希值加分片的索引下标。

22、第二方面,本申请提供了一种基于io流的文件传输装置,包括:

23、生成单元,用于生成压缩文件,所述压缩文件包括待传输的视频和/或图片;

24、切片单元,用于根据预设的分片大小对所述压缩文件进行切片;

25、md5值单元,用于根据分片后的文件输出所述压缩文件的md5值;

26、查询单元,用于将所述压缩文件的md5值发送给服务器,查询服务器的数据库文件表是否存在相同的md5值,如果存在,停止上传压缩文件;如果不存在,执行以下步骤;

27、上传单元,用于将分片文件信息发送给服务器做校验,通过校验,只上传未上传的分片。

28、第三方面,本申请提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述任一项所述方法的步骤。

29、本申请基于io流的文件传输方法及装置具有如下有益效果:

30、本申请提升了文件上传速度,即使是分片上传失败,也只需要上传失败的分片,无需上传整个文件,为无人机拍摄的图片、视频传输存储做出了保障。

本文档来自技高网...

【技术保护点】

1.一种基于IO流的文件传输方法,其特征在于,包括:

2.根据权利要求1所述基于IO流的文件传输方法,其特征在于,S101,生成压缩文件,所述压缩文件包括待传输的视频和/或图片,包括:

3.根据权利要求1或2所述基于IO流的文件传输方法,其特征在于,S103,根据预设的分片大小对所述压缩文件进行切片,包括:

4.根据权利要求1或2所述基于IO流的文件传输方法,其特征在于,S105,根据分片后的文件输出所述压缩文件的MD5值,包括:

5.根据权利要求1或2所述基于IO流的文件传输方法,其特征在于,S109,将分片文件信息发送给服务器做校验,通过校验,只上传未上传的分片,包括:

6.根据权利要求1或2所述基于IO流的文件传输方法,其特征在于,还包括:

7.根据权利要求1或2所述基于IO流的文件传输方法,其特征在于,还包括:文件合并后写入文件表,文件表中记录文件信息及MD5值。

8.根据权利要求6所述基于IO流的文件传输方法,其特征在于,所述分片编号为文件名哈希值加分片的索引下标。

9.一种基于IO流的文件传输装置,其特征在于,包括:

10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现所述权利要求1-8中任一项所述方法的步骤。

...

【技术特征摘要】

1.一种基于io流的文件传输方法,其特征在于,包括:

2.根据权利要求1所述基于io流的文件传输方法,其特征在于,s101,生成压缩文件,所述压缩文件包括待传输的视频和/或图片,包括:

3.根据权利要求1或2所述基于io流的文件传输方法,其特征在于,s103,根据预设的分片大小对所述压缩文件进行切片,包括:

4.根据权利要求1或2所述基于io流的文件传输方法,其特征在于,s105,根据分片后的文件输出所述压缩文件的md5值,包括:

5.根据权利要求1或2所述基于io流的文件传输方法,其特征在于,s109,将分片文件信息发送给服务器做校验,...

【专利技术属性】
技术研发人员:袁泽军赵二保
申请(专利权)人:安徽尚特杰电力技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1