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

一种文件管理方法及装置制造方法及图纸

技术编号:40009666 阅读:4 留言:0更新日期:2024-01-16 15:04
本发明专利技术提供了一种文件管理方法及装置,其中文件管理方法包括:构建文件邻接表,该文件邻接表中的字段包括文件ID、文件名称、上级文件ID以及该文件的类型是否为文件夹,文件夹类型的文件在该文件邻接表中的字段还包括文件存储路径,该文件存储路径中不包括该文件夹的文件名;以及基于该文件邻接表执行文件管理操作。

【技术实现步骤摘要】

本专利技术涉及数据管理领域,尤其涉及一种文件管理方法与装置。


技术介绍

1、现有技术中常见的树形结构存储模型包括邻接表、路径枚举、嵌套集及闭包表等,不过每种类型都存在着各自的缺陷。例如,邻接表中保存了每个节点的父节点,使用方便,但当节点层级过多时,存在着查询困难的问题。而路径枚举虽然能够很直观地展示结构上祖先和后代之间的路径关系,但由于它不能确保引用完整性,使得数据存储变得冗余,关系维护复杂。

2、例如,采用邻接表存储设计的网盘应用,常见的一个应用场景是需要根据文件路径查询文件或文件夹列表,当用户在前端传入一个完整路径,需要根据完整路径找到对应的文件夹,并返回每个文件或文件夹的完整路径。可以理解地,邻接表中仅保存了该文件与上层文件(即父文件id)的对应关系,实现完整路径查询需进行递归查询,效率极低。

3、而路径枚举存储设计虽然擅长处理这种场景,但路径枚举存在存储开销大、路径维护复杂等问题。此外,路径枚举涉及文件操作(重命名、复制、移动等)时,需要批量更新文件路径,存在更新频繁且更新记录多的问题。对于网盘应用来说,其约90%的业务请求为查询文件操作,因此查询效率直接影响用户体验。现有的文件管理方法无法适应用户的使用需求。

4、为了克服现有技术存在的上述缺陷,本领域亟需一种文件管理方法与装置,用于通过采用邻接表与路径枚举相结合的方式,且减少路径枚举的维护成本,提升文件查询效率。


技术实现思路

1、以下给出一个或多个方面的简要概述以提供对这些方面的基本理解。此概述不是所有构想到的方面的详尽综览,并且既非旨在指认出所有方面的关键性或决定性要素亦非试图界定任何或所有方面的范围。其唯一的目的是要以简化形式给出一个或多个方面的一些概念以为稍后给出的更加详细的描述之序。

2、为了克服现有技术存在的上述缺陷,本专利技术提供了一种文件管理方法,包括:构建文件邻接表,该文件邻接表中的字段包括文件id、文件名称、上级文件id以及该文件的类型是否为文件夹,文件夹类型的文件在该文件邻接表中的字段还包括文件存储路径,该文件存储路径中不包括该文件夹的文件名;以及基于该文件邻接表执行文件管理操作。

3、在一实施例中,可选地,该基于该文件邻接表执行文件管理操作,包括:基于该文件邻接表执行文件查询操作,该文件查询操作包括根据前端传入的完整文件路径查询该文件的子文件列表,以及根据文件id查询该文件的完整文件路径,该完整文件路径由该文件存储路径和该文件名称构成。

4、在一实施例中,优选地,该根据前端传入的完整文件路径查询该文件的子文件列表,可以包括:根据该文件的完整文件路径匹配该文件邻接表中的该文件存储路径字段和该文件名称字段,同时文件类型为文件夹,以在该文件邻接表中查找文件;以及将查找得到文件的文件id字段作为上级文件id,再次查找匹配该文件邻接表中的上级文件id字段,以得到该文件的子文件列表。

5、在一实施例中,优选地,该根据文件id查询该文件的完整文件路径,可以包括:根据文件id匹配该文件邻接表中的文件id字段以查找文件;以及响应于查找出的文件为文件夹类型,将该文件在该文件邻接表中的文件存储路径字段和文件名称字段组合以构成该文件的完整文件路径。

6、在一实施例中,优选地,该根据文件id查询该文件的完整文件路径,还可以包括:响应于查找出的文件为文件类型,将该文件在该文件邻接表中的上级文件id字段作为新的查询条件再次查找该文件邻接表;以及将查找得到的上级文件的文件存储路径字段与文件id字段组合以得到该上级文件的完整文件路径,再将该上级文件的完整文件路径与该文件的文件名称组合以得到该文件的完整文件路径。

7、在一实施例中,优选地,该基于该文件邻接表执行文件管理操作,可以包括:执行特定文件管理操作后更新该文件邻接表中的该文件存储路径字段,该特定文件管理操作包括文件的复制、移动和重命名。

8、在一实施例中,优选地,该执行特定文件管理操作后更新该文件邻接表中的该文件存储路径字段,可以包括:响应于执行特定文件管理操作的文件对象为非文件夹类型,或者为不存在子文件夹的文件夹类型执行重命名操作,或者该特定文件管理操作在同一文件目录内进行,无需更新该文件存储路径字段;以及响应于为不存在子文件夹的文件夹类型执行复制或移动操作,更新当前该文件夹的该文件存储路径字段。

9、在一实施例中,优选地,该执行特定文件管理操作后更新该文件邻接表中的该文件存储路径字段,可以包括:响应于执行特定文件管理操作的文件对象为存在子文件夹的文件夹类型,则查找并遍历该文件的子文件列表,更新该文件的子文件夹在该文件邻接表中的文件存储路径字段。

10、本专利技术的另一方面还提供了一种文件管理装置,包括:存储器;以及与该存储器耦接的处理器,该处理器配置用于执行如上文中任一项所描述的文件管理方法。

11、本专利技术还提供了一种计算机可读介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上文中任一项所描述的文件管理方法。

本文档来自技高网...

【技术保护点】

1.一种文件管理方法,包括:

2.如权利要求1所述的文件管理方法,其特征在于,所述基于所述文件邻接表执行文件管理操作,包括:

3.如权利要求2所述的文件管理方法,其特征在于,所述根据前端传入的完整文件路径查询该文件的子文件列表,包括:

4.如权利要求2所述的文件管理方法,其特征在于,所述根据文件ID查询该文件的完整文件路径,包括:

5.如权利要求4所述的文件管理方法,其特征在于,所述根据文件ID查询该文件的完整文件路径,还包括:

6.如权利要求2所述的文件管理方法,其特征在于,所述基于所述文件邻接表执行文件管理操作,还包括:

7.如权利要求6所述的文件管理方法,其特征在于,所述执行特定文件管理操作后更新所述文件邻接表中的所述文件存储路径字段,包括:

8.如权利要求7所述的文件管理方法,其特征在于,所述执行特定文件管理操作后更新所述文件邻接表中的所述文件存储路径字段,还包括:

9.一种文件管理装置,包括:

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

...

【技术特征摘要】

1.一种文件管理方法,包括:

2.如权利要求1所述的文件管理方法,其特征在于,所述基于所述文件邻接表执行文件管理操作,包括:

3.如权利要求2所述的文件管理方法,其特征在于,所述根据前端传入的完整文件路径查询该文件的子文件列表,包括:

4.如权利要求2所述的文件管理方法,其特征在于,所述根据文件id查询该文件的完整文件路径,包括:

5.如权利要求4所述的文件管理方法,其特征在于,所述根据文件id查询该文件的完整文件路径,还包括:

6.如权利要求2所述的文件管理方法,...

【专利技术属性】
技术研发人员:郭磊王刚丘凌陈天明曹航瑞任伟权白云
申请(专利权)人:天翼数字生活科技有限公司
类型:发明
国别省市:

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

1