掌桥专利:专业的专利平台
掌桥专利
首页

文件存储、检索方法、装置、电子设备及存储介质

文献发布时间:2023-06-19 12:07:15


文件存储、检索方法、装置、电子设备及存储介质

技术领域

本发明涉及文件管理技术领域,特别是涉及一种文件存储、检索方法、装置、电子设备及存储介质。

背景技术

现有技术中,应用平台例如淘宝、天猫、支付宝、微信等在进行数据存储时,将各自的文件存储在各自对应的存储位置中,这会使得各个应用平台的存储文件无法进行统一管理。

发明内容

本发明提供一种文件存储、检索方法、装置、电子设备以及存储介质,其能够实现将多个不同应用平台的文件统一存储。

为解决上述技术问题,本发明提供的第一个技术方案为:提供一种文件存储方法,包括:获取存储设备中对应应用平台的文件存储地址和待存储文件的文件位置,所述文件存储地址为所述存储设备的磁盘信息,所述待存储文件的文件位置为所述待存储文件在所述磁盘信息中的目标存储位置;组合文件存储地址和文件位置,构建待存储文件的存储路径;基于存储路径将待存储文件存储到存储设备中。

其中,获取待存储文件的文件位置包括:获取待存储文件的标识信息,待存储文件的标识信息用于标识待存储文件在文件存储地址中的目标位置;将待存储文件的标识信息转化成二进制数据;基于文件目录层级对二进制数据进行数据拆分;分别将拆分后的各组二进制数据转换成十六进制数据;对多个十六进制数据进行组合,得到十六进制方式的待存储文件的标识信息。

其中,组合文件存储地址和文件位置,构建待存储文件的存储路径包括:将文件存储地址与十六进制方式的待存储文件的标识信息进行拼接,得到待存储文件的存储路径。

其中,基于存储路径将待存储文件存储到存储设备中之前包括:获取待存储文件的校验信息;基于校验信息查询文件存储地址内是否已存在与待存储文件相同的文件;响应于文件存储地址内已存在与待存储文件相同的文件,则不执行基于存储路径将待存储文件存储到存储设备中的步骤;响应于文件存储地址内不存在与待存储文件相同的文件,则执行基于存储路径将待存储文件存储到存储设备中的步骤。

其中,基于存储路径将待存储文件存储到存储设备中之后包括:待存储文件包括原始文件以及原始文件的转换文件;将原始文件和转换文件存储至文件存储地址中。

其中,基于存储路径将待存储文件存储到存储设备中之后包括:构建已存储文件的文件信息集合,文件信息集合包括公开信息,所述公开信息包括原始文件的标识信息,所述原始文件的标识信息用于标识已存储的所述原始文件在所述文件存储地址中的位置,已存储文件的属性信息。

其中,方法还包括构建已存储文件的文件信息集合,所述文件信息集合包括私密信息,所述私密信息包括转换文件的标识信息,所述转换文件的标识信息用于标识所述已存储文件的转换文件在所述文件存储地址中的位置,所述已存储文件的校验标识,所述已存储文件的校验标识用于唯一标识文件内容。

其中,方法还包括:构建存储地址信息集合,所述存储地址信息包括所述存储设备的类型、所述存储设备的管理空间方式、所述存储设备的磁盘信息中至少一种。

为解决上述技术问题,本发明提供的第二个技术方案为:提供一种文件检索方法,包括:获取已存储文件的标识信息;基于所述已存储文件的标识信息获取所述已存储文件在存储设备中的存储路径;所述存储路径为文件存储地址和文件位置组合得到的,所述文件存储地址为所述存储设备的磁盘信息,所述文件位置为所述已存储文件在所述磁盘信息中的目标存储位置;基于所述存储路径从所述存储设备中检索所述已存储文件。

其中,所述基于所述已存储文件的标识信息获取所述已存储文件在存储设备中的存储路径包括:将所述已存储文件的标识信息转化成二进制数据;基于文件目录层级对所述二进制数据进行数据拆分;分别将拆分后的各组二进制数据转换成十六进制数据;对多个所述十六进制数据进行组合,得到十六进制方式的已存储文件的标识信息;将所述十六进制方式的已存储文件的标识信息与所述文件存储地址进行拼接,得到所述已存储文件的存储路径。

为解决上述技术问题,本发明提供的第三个技术方案为:提供一种文件存储装置,包括:获取模块,用于获取存储设备中对应应用平台的文件存储地址和待存储文件的文件位置,所述文件存储地址为所述存储设备的磁盘信息,所述待存储文件的文件位置为所述待存储文件在所述磁盘信息中的目标存储位置;组合模块,用于组合所述文件存储地址和所述文件位置,构建所述待存储文件的存储路径;存储模块,用于基于所述存储路径将所述待存储文件存储到所述存储设备中。

为解决上述技术问题,本发明提供的第四个技术方案为:提供一种文件检索装置,包括:获取模块,用于获取已存储文件的标识信息;查找模块,用于基于所述已存储文件的标识信息获取所述已存储文件在存储设备中的存储路径;所述存储路径为文件存储地址和文件位置组合得到的,所述文件存储地址为所述存储设备的磁盘信息,所述文件位置为所述已存储文件在所述磁盘信息中的目标存储位置;检索模块,用于基于所述存储路径从所述存储设备中检索所述待存储文件。

为解决上述技术问题,本发明提供的第五个技术方案为:提供一种电子设备,包括处理器、与处理器连接的存储器,其中,存储器存储有程序指令;处理器用于执行存储器存储的程序指令以实现上述任一项的方法。

为解决上述技术问题,本发明提供的第六个技术方案为:提供一种计算机可读存储介质,存储介质存储有程序指令,程序指令被执行时实现上述任一项的方法。

本发明的有益效果,区别于现有技术,本发明通过获取存储设备中对应应用平台的文件存储地址和待存储文件的文件位置,组合文件存储地址和文件位置,构建待存储文件的存储路径;基于存储路径将待存储文件存储到存储设备。以此能够实现将多个应用平台的待存储文件进行统一存储。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图,其中:

图1为本发明文件存储方法的第一实施例的流程示意图;

图2为图1中步骤S11的一实施例的流程示意图;

图3为图2的一实施例的流程示意图;

图4为本发明文件存储方法的第二实施例的流程示意图;

图5为本发明文件检索方法的一实施例的流程示意图;

图6为本发明待存储文件检索时的文件路径;

图7为本发明文件存储装置的一实施例的结构示意图;

图8为本发明文件检索装置的一实施例的结构示意图;

图9是本发明电子设备的一实施例的结构示意图;

图10是本发明计算机可读存储介质的结构示意图。

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

请参见图1,为本发明文件存储方法的第一实施例的流程示意图。包括:

步骤S11:获取存储设备中对应应用平台的文件存储地址和待存储文件的文件位置,所述文件存储地址为所述存储设备的磁盘信息,所述待存储文件的文件位置为所述待存储文件在所述磁盘信息中的目标存储位置。

具体的,在对待存储文件进行存储时,会生成待存储文件的标识信息,基于待存储文件的标识信息获取待存储文件的文件位置。请参见图2,获取待存储文件的文件位置包括:

步骤S21:获取待存储文件的标识信息,待存储文件的标识信息用于标识待存储文件在文件存储地址中的目标位置。

具体的,在一实施例中,待存储文件包括原始文件以及原始文件的转换文件。在存储待存储文件时,需要将待存储文件的原始文件以及原始文件的转换文件都进行存储。也即在进行存储时,需要获取原始文件的标识信息以及原始文件的转换文件的标识信息。

具体的,可以基于应用平台的标识信息从user_space_n集合中获取原始文件的标识信息。user_space_n集合为已存储文件的文件信息集合,其包括公开信息,公开信息包括原始文件的标识信息,所述原始文件的标识信息用于标识已存储的所述原始文件在所述文件存储地址中的位置,已存储文件的属性信息。该属性信息供用户查看,以了解文件的各个属性,例如了解文件是图像文件还是视频文件等。

进一步的,基于原始文件的标识信息从已存储文件的文件信息集合(file_base_info集合)中获取转换文件的标识信息。在一实施例中,已存储文件的文件信息集合包括私密信息,私密信息包括转换文件的标识信息,转换文件的标识信息用于标识已存储文件的转换文件在文件存储地址中的位置,已存储文件的校验标识,已存储文件的校验标识用于唯一标识文件内容。已知原始文件的标识信息,基于原始文件的标识信息从file_base_info集合获取原始文件的转换文件的标识信息。

步骤S22:将待存储文件的标识信息转化成二进制数据。

具体的,将原始文件的标识信息转换成二进制数据,以及将原始文件的转换文件的标识信息转换成二进制数据。如图3所示,以原始文件的标识信息为例,假设原始文件的标识信息为:7453568329,将其转化为二进制数据(如标号31所示)。

步骤S23:基于文件目录层级对二进制数据进行数据拆分。

进一步基于文件目录层级对二进制数据进行拆分,例如,将其1到n1位的二进制数转化为十六进制数用于表示id4,将其n1+1到n2位的二进制数转化为十六进制数用于表示id3,将其n2+1到n3位的二进制数转化为十六进制数用于表示id2,将其第n3+1位到最高位的二进制数转化为十六进制数用于表示id1。如图3所示,将二进制数据拆分为四个部分的二进制数据(如标号32、33、34、35所示)。具体的,可以按照1到16位的二进制数,17到30位的二进制数,31到44为的二进制数,45到最高位的二进制数的拆分方式进行拆分。

步骤S24:分别将拆分后的各组二进制数据转换成十六进制数据。

分别将拆分后的各组二进制数据转换成十六进制数据。如图3所示,将标号32所示的二进制数据转换成十六进制数据0,将标号33所示的二进制数据转换成十六进制数据6,将标号34所示的二进制数据转换成十六进制数据3C44,将标号35所示的二进制数据转换成十六进制数据6D49。

步骤S25:对多个十六进制数据进行组合,得到十六进制方式的待存储文件的标识信息。

具体的,将转换后的十六进制数据0、6、3C44、6D49进行组合,进而得到十六进制方式的待存储文件的标识信息。具体的,若转换对象为原始文件的标识信息,则最终得到十六进制方式的原始文件的标识信息,若转换对象为原始文件的转换文件的标识信息,则最终得到十六进制方式的转换文件的标识信息。

具体的,待存储文件的标识信息标识待存储文件在文件存储地址中的目标位置。也即标识了原始文件在文件存储地址中的目标位置以及转换文件在文件存储地址的目标位置。

具体的,在本实施例中,在存储设备路径下创建了三级目录,在目录名称用0、6、3C44表示,在3C44所标识的文件夹下存储上传成功的文件,以及待存储文件,该待存储文件的文件名称用6D49进行表示,也即待存储文件的文件位置为:0\6\3C44,文件名称为:6D49。

本实施例的方式,将原有的复杂的原始文件的标识信息以及转换文件的标识信息进行编码,转换为了简单的十六进制数据,将其中部分作为目录,另一部分作为文件名称,能够加快检索速度。

具体的,在得到待存储文件的文件位置后,还需要进一步得到文件存储地址,文件存储地址为存储设备的磁盘信息,而待存储文件的文件位置为待存储文件在磁盘信息中的目标存储位置。

具体的,在一实施例中,可以通过访问storage_dev集合进而得到存储设备的磁盘信息。storage_dev集合为存储地址信息集合,存储地址信息包括存储设备的类型、存储设备的管理空间方式、存储设备的磁盘信息中至少一种。具体的,存储设备的类型有服务器、本地磁盘、云盘等,这里会保存存储设备的名称。存储设备的存储组别用于区分主存储和备用存储,若主存储损坏,可以使用备用存储待存储文件。

步骤S12:组合文件存储地址和文件位置,构建待存储文件的存储路径。

由于待存储文件的文件位置为待存储文件在磁盘信息中的目标存储位置,因此将文件存储地址和文件位置进行组合,也即将待存储文件的文件位置与磁盘信息进行组合进而构建待存储文件的存储路径。例如,将原始文件的文件位置和文件存储地址进行组合,进而得到原始文件的存储路径。将原始文件的转换文件得文件位置和文件存储地址进行组合,进而得到原始文件的转换文件的存储路径。

具体的,以原始文件为例,假设原始文件的标识信息进行编码后得到的结果为0、6、3C44、6D49;假设磁盘信息为c盘,则待存储文件的原始文件的文件位置为0\6\3C44,文件名称为:6D49。则待存储文件的原始文件的存储路径为C\:0\6\3C44\6D49。

将文件存储地址与十六进制方式的原始文件的标识信息进行拼接,进而得到原始文件的存储路径;将文件存储地址与十六进制方式的转换文件的标识信息进行拼接,进而得到转换文件的存储路径。

在一具体实施例中,将文件存储地址放在十六进制方式的原始文件的标识信息或者十六进制方式的转换文件的标识信息之前,进而得到原始文件的存储路径或者转换文件的存储路径。

步骤S13:基于存储路径将待存储文件存储到存储设备中。

具体的,基于原始文件的存储路径将原始文件存储到存储设备中,基于转换文件的存储路径将转换文件存储到存储设备中。

通过本实施例的文件存储方法,能够将多个应用平台的文件进行统一存储。并且将待存储文件的标识信息转化为二进制数据进行拆分,进一步转化为十六进制的数据,可以简化待存储文件的标识信息,形成层级目录,可以基于该层级目录进行检索,提高检索速度。

请参见图4,为本发明文件存储方法的第二实施例的流程示意图。其中,步骤S41以及步骤S42与上述图1所示的第一实施例的步骤S11以及步骤S12相同,区别在于,本实施例在步骤S42之后还包括:

步骤S43:获取待存储文件的校验信息。

具体的,可以进一步通过SHA-1方法对待存储文件进行加密,生成待存储文件的校验信息。例如对待存储文件中的原始文件进行加密,生成原始文件的校验信息,对待存储文件中的原始文件的转换文件进行加密,生成转换文件的校验信息。

步骤S44:基于校验信息查询文件存储地址是否已存在与待存储文件相同的文件。

基于待存储文件的校验信息从file_base_info集合中查询文件存储地址内是否已存在与待存储文件相同的文件。file_base_info集合中包括已存储文件的校验标识,已存储文件的校验标识用于唯一标识文件内容。也即将待存储文件的校验信息与已存储文件的校验信息进行比对,查看文件存储地址内是否已存储与待存储文件相同的文件。

步骤S45:响应于文件存储地址内已存在与待存储文件相同的文件,则不执行基于存储路径将待存储文件存储到存储设备中的步骤。

具体的,若文件存储地址内已存在与待存储文件相同的文件,则不执行步骤S13,也即不将待存储文件存储到存储设备中。

步骤S46:响应于文件存储地址内不存在与待存储文件相同的文件,则执行基于存储路径将待存储文件存储到存储设备中的步骤。

若文件存储地址内不存在与待存储文件相同的文件,则执行步骤S13,也即将待存储文件存储到存储设备中。

在一实施例中,若文件存储地址内已存在与待存储文件相同的文件,还可以将文件存储地址内相同的文件删除,替换成待存储文件。

在另一实施例中,还可以基于校验信息查询文件存储地址外的其他文件夹是否已存在与待存储文件相同的文件,若是,则不存储待存储文件,或者利用待存储文件覆盖相同的文件。

在另一实施例中,还可以基于校验信息查询存储设备内存储的其他应用平台内是否已存在与待存储文件相同的文件,若是,则不存储待存储文件,或者利用待存储文件覆盖相同的文件。

通过本实施例的方式,可以对存储设备内存储的文件进行查重,不对待存储文件进行重复存储,避免重复,减少数据冗余性。

在一具体实施例中,在将待存储文件存储到存储设备中之后,还可以构建已存储文件的文件信息集合(user_space_n集合),该文件信息集合包括公开信息,公开信息包括原始文件的标识信息,所述原始文件的标识信息用于标识已存储的所述原始文件在所述文件存储地址中的位置,已存储文件的属性信息。也即将应用平台的原始文件的标识信息,待存储文件的属性信息更新到文件信息集合,以作为下一次存储文件的参考。

在另一实施例中,在将存储文件存储到存储设备中之后,还需要构建已存储文件的文件信息集合(file_base_info集合),文件信息集合包括私密信息,私密信息包括转换文件的标识信息,转换文件的标识信息用于标识已存储文件的转换文件在所述文件存储地址中的位置,已存储文件的校验标识,所述已存储文件的校验标识用于唯一标识文件内容。具体的,利用转换文件的标识信息更新已存储文件的文件信息集合(file_base_info集合)。进一步将已存储文件,例如原始文件的校验标识以及转换文件的校验标识存储到file_base_info集合中,以便于下一次存储文件时进行查重。在另一实施例中,在将存储文件存储到存储设备中之后,还需要构建存储地址信息集合(storage_dev集合),存储地址信息包括存储设备的类型、存储设备的管理空间方式、所述存储设备的磁盘信息中至少一种。具体的,将待存储文件对应的磁盘信息更新至存储地址信息集合。

在一实施例中,在对待存储文件进行检索时,若要检索原始文件,则根据原始文件的标识信息从存储设备中检索得到原始文件的数据,若要检索转换文件,则需要根据原始文件的标识信息从file_base_info集合中找到对应的转换文件的标识信息,通过转换文件的标识信息从存储设备中检索得到转换文件。

具体的,请参见图5,为本发明文件检索方法的第一实施例的流程示意图,具体包括:

步骤S51:获取已存储文件的标识信息。

具体的,已存储文件进行存储后,应用平台桌面对应显示已存储文件的图标信息,用户点击该图标信息,应用平台即可获取该已存储文件的标识信息。在另一实施例中,若应用平台桌面未显示已存储文件的图标信息,可以进一步根据已存储文件的属性信息例如文件名关键词、文件类型等搜索得到已存储文件的图像信息,用户进一步点击该图标信息,以使得应用平台获取该已存储文件的标识信息。

进一步的,用户在点击该图标信息以发送检索指令时,同时会将该图标信息对应的应用平台的标识信息发送给后端存储设备,进一步找到该应用平台对应的user_space_n集合。其中,n标识应用平台的标识信息。

步骤S52:基于所述已存储文件的标识信息获取所述已存储文件在存储设备中的存储路径。

应用平台获取到已存储文件的标识信息后,对已存储文件的标识信息进行编码,具体的,将已存储文件的标识信息转化成二进制数据;基于文件目录层级对二进制数据进行数据拆分;分别将拆分后的各组二进制数据转换成十六进制数据;对多个十六进制数据进行组合,得到十六进制方式的已存储文件的标识信息。具体过程如图3所示,具体不再赘述。在得到十六进制方式的已存储文件的标识信息后,将十六进制方式的已存储文件的标识信息与所述文件存储地址进行拼接,得到所述已存储文件的存储路径。其中,存储路径为文件存储地址和文件位置组合得到的,所述文件存储地址为所述存储设备的磁盘信息,所述文件位置为所述已存储文件在所述磁盘信息中的目标存储位置。

步骤S53:基于所述存储路径从所述存储设备中检索已存储文件。

具体的,已存储文件包括原始文件以及转换文件。可以理解的,若要检索原始文件,则获取原始文件的标识信息(原始文件的标识信息通过用户点击已存储文件的图标获取的),利用图3所示的方法,对原始文件的标识信息进行编码,进而得到十六进制的原始文件的标识信息,将十六进制的原始文件的标识信息与文件存储地址进行拼接,得到所述原始文件的存储路径,基于该原始文件的存储路径检索得到原始文件。若要检索转换文件,则在获取原始文件的标识信息之后,基于原始文件的标识信息从file_base_info集合中找到转换文件的标识信息,利用图3所示的方法,对转换文件的标识信息进行编码,进而得到十六进制的转换文件的标识信息,将十六进制的转换文件的标识信息与文件存储地址进行拼接,得到所述转换文件的存储路径,基于该转换文件的存储路径检索得到转换文件。

由于在存储阶段,对待存储文件的标识信息进行了编码,使其转换为十六进制的方式的表示,因此在检索阶段同样进行检索,其方法能够提高检索速度。

具体的,如图6所示,用户在进行文件检索时,可以根据存储路径逐一打开文件夹,进而得到文件的展示路径,该文件的展示路径即为文件的存储路径。

文件和文件夹的信息存在user_space_n集合中,想要得到文件的展示路径,需要根据文件的上一级文件夹的id不断的向前遍历,直至遍历至根目录,将便利得到的文件夹名称相结合,集合得到文件检索向用户展示处的路径信息。如图6所示,根目录a1的id为1,文件an的id为100,根据文件an的上一级文件夹id找到中间目录am,再根据中间目录的上一级文件夹id得到其上级文件夹,直至找到根目录a1。由图可知,文件在应用平台的展示路径为\a1\a2\......\am\an。

本申请提供的文件存储方法,一方面可以将多个应用平台的数据进行统一存储,并且其能够对待存储文件进行查重,有效去除各平台之间的冗余数据,并增强各平台之间的交互性。另一方面,在进行存储时,对标识信息进行编码,形成多层级的存储结构,防止多文件存储在同一存储路径下,并且简化各个文件的存储信息,从而提高检索性能以及检索速度。

请参见图7,为本发明文件存储装置的一实施例的结构示意图,具体包括:获取模块61、组合模块62以及存储模块63。其中,获取模块61用于获取存储设备中对应应用平台的文件存储地址和待存储文件的文件位置,所述文件存储地址为所述存储设备的磁盘信息,所述待存储文件的文件位置为所述待存储文件在所述磁盘信息中的目标存储位置。

在一实施例中,获取模块61还用于获取待存储文件的标识信息,待存储文件的标识信息用于标识待存储文件在文件存储地址中的目标位置;将待存储文件的标识信息转化成二进制数据;基于文件目录层级对二进制数据进行数据拆分;分别将拆分后的各组二进制数据转换成十六进制数据;对多个十六进制数据进行组合,得到十六进制方式的待存储文件的标识信息。

具体的,获取模块61还用于基于应用平台的标识信息从user_space_n集合中获取原始文件的标识信息。进一步的,基于原始文件的标识信息从已存储文件的文件信息集合(file_base_info集合)中获取转换文件的标识信息。在一实施例中,已存储文件的文件信息集合包括私密信息,私密信息包括转换文件的标识信息,转换文件的标识信息用于标识已存储文件的转换文件在文件存储地址中的位置,已存储文件的校验标识,已存储文件的校验标识用于唯一标识文件内容。已知原始文件的标识信息,基于原始文件的标识信息从file_base_info集合获取原始文件的转换文件的标识信息。将原始文件的标识信息转换成二进制数据,以及将原始文件的转换文件的标识信息转换成二进制数据。如图3所示,以原始文件的标识信息为例,假设原始文件的标识信息为:7453568329,将其转化为二进制数据。进一步基于文件目录层级对二进制数据进行拆分,例如,将其1到n1位的二进制数转化为十六进制数用于表示id4,将其n1+1到n2位的二进制数转化为十六进制数用于表示id3,将其n2+1到n3位的二进制数转化为十六进制数用于表示id2,将其第n3+1位到最高位的二进制数转化为十六进制数用于表示id1。如图3所示,将二进制数据拆分为四个部分的二进制数据(如标号32、33、34、35所示)。具体的,可以按照1到16位的二进制数,17到30位的二进制数,31到44为的二进制数,45到最高位的二进制数的拆分方式进行拆分。分别将拆分后的各组二进制数据转换成十六进制数据。如图3所示,将标号32所示的二进制数据转换成十六进制数据0,将标号33所示的二进制数据转换成十六进制数据6,将标号34所示的二进制数据转换成十六进制数据3C44,将标号35所示的二进制数据转换成十六进制数据6D49。将转换后的十六进制数据0、6、3C44、6D49进行组合,进而得到十六进制方式的待存储文件的标识信息。具体的,若转换对象为原始文件的标识信息,则最终得到十六进制方式的原始文件的标识信息,若转换对象为原始文件的转换文件的标识信息,则最终得到十六进制方式的转换文件的标识信息。

具体的,待存储文件的标识信息标识待存储文件在文件存储地址中的目标位置。也即标识了原始文件在文件存储地址中的目标位置以及转换文件在文件存储地址的目标位置。

具体的,在本实施例中,在存储设备路径下创建了三级目录,在目录名称用0、6、3C44表示,在3C44所标识的文件夹下存储上传成功的文件,以及待存储文件,该待存储文件的文件名称用6D49进行表示,也即待存储文件的文件位置为:0\6\3C44,文件名称为:6D49。

组合模块62用于组合文件存储地址和文件位置,构建待存储文件的存储路径。

在一实施例中,组合模块62用于将文件存储地址与十六进制方式的待存储文件的标识信息进行拼接,得到待存储文件的存储路径。具体的,组合模块62用于将文件存储地址与十六进制方式的原始文件的标识信息进行拼接,进而得到原始文件的存储路径;将文件存储地址与十六进制方式的转换文件的标识信息进行拼接,进而得到转换文件的存储路径。

在一具体实施例中,组合模块62将文件存储地址放在十六进制方式的原始文件的标识信息或者十六进制方式的转换文件的标识信息之前,进而得到原始文件的存储路径或者转换文件的存储路径。

存储模块63用于基于存储路径将待存储文件存储到存储设备中。

在一实施例中,存储模块63用于基于原始文件的存储路径将原始文件存储到存储设备中,基于转换文件的存储路径将转换文件存储到存储设备中。

进一步的,存储模块63还用于获取待存储文件的校验信息;基于校验信息查询文件存储地址内是否已存在与待存储文件相同的文件;响应于文件存储地址内已存在与待存储文件相同的文件,则不执行基于存储路径将待存储文件存储到存储设备中的步骤;响应于文件存储地址内不存在与待存储文件相同的文件,则执行基于存储路径将待存储文件存储到存储设备中的步骤。

进一步的,存储模块63还用于基于校验信息查询文件存储地址外的其他文件夹是否已存在与待存储文件相同的文件,若是,则不存储待存储文件,或者利用待存储文件覆盖相同的文件。

在另一实施例中,存储模块63还可以基于校验信息查询存储设备内存储的其他应用平台内是否已存在与待存储文件相同的文件,若是,则不存储待存储文件,或者利用待存储文件覆盖相同的文件。

通过本申请的文件存储装置,能够将多个应用平台的文件进行统一存储。并且将待存储文件的标识信息转化为二进制数据进行拆分,进一步转化为十六进制的数据,可以简化待存储文件的标识信息,形成层级目录,可以基于该层级目录进行检索,提高检索速度。本申请的文件存储装置还可以对待存储文件进行查重,进而去除重复文件,减少数据的冗余性。

请参见图8,为本发明文件检索装置的一实施例的结构示意图,具体包括获取模块71、查找模块72以及检索模块73。

其中,获取模块71用于获取已存储文件的标识信息。

具体的,已存储文件进行存储后,应用平台桌面对应显示已存储文件的图标信息,用户点击该图标信息,应用平台即可获取该已存储文件的标识信息。在另一实施例中,若应用平台桌面未显示已存储文件的图标信息,可以进一步根据已存储文件的属性信息例如文件名关键词、文件类型等搜索得到已存储文件的图像信息,用户进一步点击该图标信息,以使得应用平台获取该已存储文件的标识信息。

进一步的,用户在点击该图标信息以发送检索指令时,同时会将该图标信息对应的应用平台的标识信息发送给后端存储设备,进一步找到该应用平台对应的user_space_n集合。其中,n标识应用平台的标识信息。

查找模块72用于基于所述已存储文件的标识信息获取所述已存储文件在存储设备中的存储路径。

应用平台获取到已存储文件的标识信息后,对已存储文件的标识信息进行编码,具体的,将已存储文件的标识信息转化成二进制数据;基于文件目录层级对二进制数据进行数据拆分;分别将拆分后的各组二进制数据转换成十六进制数据;对多个十六进制数据进行组合,得到十六进制方式的已存储文件的标识信息。具体过程如图3所示,具体不再赘述。在得到十六进制方式的已存储文件的标识信息后,将十六进制方式的已存储文件的标识信息与所述文件存储地址进行拼接,得到所述已存储文件的存储路径。其中,存储路径为文件存储地址和文件位置组合得到的,所述文件存储地址为所述存储设备的磁盘信息,所述文件位置为所述已存储文件在所述磁盘信息中的目标存储位置。

检索模块73用于基于所述存储路径从所述存储设备中检索已存储文件。

具体的,已存储文件包括原始文件以及转换文件。可以理解的,若要检索原始文件,则获取原始文件的标识信息(原始文件的标识信息通过用户点击已存储文件的图标获取的),利用图3所示的方法,对原始文件的标识信息进行编码,进而得到十六进制的原始文件的标识信息,将十六进制的原始文件的标识信息与文件存储地址进行拼接,得到所述原始文件的存储路径,基于该原始文件的存储路径检索得到原始文件。若要检索转换文件,则在获取原始文件的标识信息之后,基于原始文件的标识信息从file_base_info集合中找到转换文件的标识信息,利用图3所示的方法,对转换文件的标识信息进行编码,进而得到十六进制的转换文件的标识信息,将十六进制的转换文件的标识信息与文件存储地址进行拼接,得到所述转换文件的存储路径,基于该转换文件的存储路径检索得到转换文件。

由于在存储阶段,对待存储文件的标识信息进行了编码,使其转换为十六进制的方式的表示,因此在检索阶段同样进行检索,其方法能够提高检索速度。

请参见图9,为本发明电子设备的一实施例的结构示意图。电子设备包括相互连接的存储器82和处理器81。

存储器82用于存储实现上述任意一项的方法的程序指令。

处理器81用于执行存储器82存储的程序指令。

其中,处理器81还可以称为CPU(Central Processing Unit,中央处理单元)。处理器81可能是一种集成电路芯片,具有信号的处理能力。处理器81还可以是通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

存储器82可以为内存条、TF卡等,可以存储电子设备中全部信息,包括输入的原始数据、计算机程序、中间运行结果和最终运行结果都保存在存储器中。它根据控制器指定的位置存入和取出信息。有了存储器,电子设备才有记忆功能,才能保证正常工作。电子设备的存储器按用途存储器可分为主存储器(内存)和辅助存储器(外存),也有分为外部存储器和内部存储器的分类方法。外存通常是磁性介质或光盘等,能长期保存信息。内存指主板上的存储部件,用来存放当前正在执行的数据和程序,但仅用于暂时存放程序和数据,关闭电源或断电,数据会丢失。

在本申请所提供的几个实施例中,应该理解到,所揭露的方法和装置,可以通过其它的方法实现。例如,以上所描述的装置实施方法仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方法,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施方法方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,系统服务器,或者网络设备等)或处理器(processor)执行本申请各个实施方法的全部或部分步骤。

请参阅图10,为本发明计算机可读存储介质的结构示意图。本申请的存储介质存储有能够实现上述所有方法的程序文件91,其中,该程序文件91可以以软件产品的形式存储在上述存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施方法的全部或部分步骤。而前述的存储装置包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质,或者是计算机、服务器、手机、平板等终端设备。

以上仅为本发明的实施方法,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

相关技术
  • 文件存储、检索方法、装置、电子设备及存储介质
  • 一种文件存储方法、装置、电子设备和存储介质
技术分类

06120113178106