一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

确定文件夹大小的方法、装置、设备及存储介质与流程

2021-12-01 01:37:00 来源:中国专利 TAG:


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.所述处理模块,还用于根据所述每一固定文件夹的大小,以及所述至少一个固定文件夹以外的子文件夹的大小,确定所述根目录文件夹的大小。
31.可选的,所述处理模块,具体用于:
32.读取所述索引文件,确定所述每一固定文件夹的相对路径;
33.指示所述获取模块获取第一子文件夹的相对路径;所述第一子文件夹为所述根目录文件夹中的任一子文件夹;
34.确定所述索引文件中是否存在第二子文件夹;所述第二子文件夹为与所述第一子文件夹相对路径相同的固定文件夹;
35.若是,确定所述第二子文件夹的大小为所述第一文件夹的大小;
36.若否,扫描确定所述第一子文件夹的大小;
37.累加所述根目录文件夹中每一所述第一子文件夹的大小,确定所述根目录文件夹的大小。
38.可选的,所述获取模块,还用于获取所述根目录文件夹下的子文件夹;
39.所述处理模块,还用于当所述子文件夹为大小固定文件夹时,为所述子文件夹添加第一标识;所述第一标识用于标识所述子文件夹为所述固定文件夹。
40.可选的,所述处理模块,还用于:
41.当所述第一子文件夹包括第一标识时,更新所述索引文件;所述更新后的索引文件还用于指示所述第一子文件夹相对于所述根目录文件夹的相对路径,以及所述第一子文件夹的大小。
42.可选的,所述索引文件为存储在硬盘中的文件;或,所述索引文件为写入到内存中的文件。
43.可选的,所述处理模块,还用于:
44.扫描所述根目录文件夹;
45.当所述根目录文件夹中不包括所述索引文件时,创建所述索引文件。
46.根据本公开实施例的第三方面,提供一种电子设备,包括:
47.处理器;
48.用于存储所述处理器可执行指令的存储器;
49.其中,所述处理器被配置为执行所述指令,以实现上述第一方面及第一方面中任一种可选地确定文件夹大小的方法。
50.根据本公开实施例的第四方面,提供一种计算机可读存储介质,所述计算机可读存储介质上存储有指令,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够执行如上述第一方面及第一方面中任一种可选地确定文件夹大小的方法。
51.根据本公开实施例的第五方面,提供一种计算机程序产品,所述计算机程序产品包括计算机指令,当所述计算机指令在电子设备上运行时,使得所述电子设备执行上述第一方面及第一方面中任一种可选地确定文件夹大小的方法。
52.本公开的实施例提供的技术方案至少带来以下有益效果:当电子设备需要确定根目录文件夹的大小时,电子设备首先根据索引文件确定固定文件夹的大小,然后采用扫描文件夹大小的方式确定固定文件夹以外的文件夹的大小。由于索引文件中具有固定文件夹的相对路径,以及固定文件夹的大小。因此,在子文件夹为大小固定的文件夹时,电子设备可直接根据子文件夹相对路径确定子文件夹的大小。相比较于扫描子文件夹确定子文件夹大小的方式,根据索引文件确定子文件夹大小仅需简单的比对相对路径即可直接确定索引文件指示的文件夹的大小,大大降低了电子设备扫描子文件夹所需的时间,进而提高了电子设备扫描根目录文件夹的效率。
53.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
54.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
55.图1是根据一示例性实施例示出的一种确定文件夹大小的方法的流程图。
56.图2是根据一示例性实施例示出的另一种确定文件夹大小的方法的流程图。
57.图3是根据一示例性实施例示出的又一种确定文件夹大小的方法的流程图。
58.图4是根据一示例性实施例示出的又一种确定文件夹大小的方法的流程图。
59.图5是根据一示例性实施例示出的一种确定文件夹大小的装置的框图。
60.图6是根据一示例性实施例示出的一种电子设备的结构示意图。
具体实施方式
61.为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
62.需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
63.在对本公开实施例的确定文件夹大小的方法进行详细介绍之前,先对本公开实施例的涉及到的名词进行解释,对本公开实施例的应用场景和实施环境进行介绍。
64.首先,对本公开实施例涉及到的名词进行解释。
65.1、文件夹的大小
66.在本公开实施例中,文件夹的大小指的是文件夹占用的存储空间的大小。在本公开中,主要以应用程序的安装文件夹为例进行说明。
67.2、固定文件夹
68.在本公开实施例中,固定文件夹指的是文件夹大小固定的文件夹,通常是指的文件夹内的数据量固定,不会新增、修改或者删除数据的文件夹。
69.3、根目录文件夹
70.在本公开实施例中,根目录文件夹指的是待扫描的文件夹。可选的,当电子设备需要扫描应用程序占用的存储空间的大小时,根目录文件夹为该应用程序的安装文件夹。
71.以电子设备为手机,待扫描的应用程序的名称为应用程序a为例,本公开实施例中的根目录文件夹的绝对路径为“手机/内部存储设备/应用程序a”。根目录文件夹为“应用程序a”。
72.4、文件夹的绝对路径和相对路径
73.文件夹的绝对路径指的是文件夹在硬盘上存储的真实路径。例如,电脑上存储于c盘windows文件夹下的system下的文件夹b的绝对路径为:c:/windows/system/文件夹b。
74.文件夹的相对路径指的是文件夹相对于某一个目标文件夹的路径。同上述举例,文件夹b相对于windows文件夹的路径为:.system/文件夹b。在本公开中,子文件夹相对路径指的是子文件夹相对于根目录文件夹的相对路径。
75.其次,对本公开实施例的应用场景进行介绍。
76.本公开实施例的确定文件夹大小的方法,应用于扫描文件夹确定文件夹的大小的场景中。具体来说,电子设备中包括用于存储文件的存储设备,文件在存储设备中以文件夹的形式存储。当电子设备需要确定根目录文件夹的大小时,电子设备需要逐个确定根目录文件夹下所有子文件夹的大小(例如使用递归扫描的方式),然后累加根目录文件夹下所有子文件夹的大小,确定根目录文件夹的大小。
77.但是,在相关技术中,电子设备扫描文件夹的大小时,需要逐个扫描该文件夹下的
所有子文件夹的大小,并累加这些子文件夹的大小确定文件夹的最终大小。在电子设备(如手机)扫描应用程序占用的存储空间的大小时,由于应用程序不断的迭代更新,应用程序的安装文件夹占用的内存空间也越来越大。电子设备扫描应用程序占用的存储空间大小的时间也越来越长,该过程占用的cpu资源,产生的功耗等也越来越高,因此当前亟需一种方法,能够提高电子设备扫描文件夹大小的效率。
78.为了提高电子设备扫描文件夹的效率,本公开实施例提供了一种扫描文件夹大小的方法,电子设备预先将文件夹中大小固定的文件夹相对于该文件夹所属的根目录的相对路径,以及文件夹的具体大小写入到索引文件中。当电子设备需要扫描根目录文件夹的大小时,电子设备读取索引文件确定大小固定的文件夹的大小,然后通过扫描的方式,确定根目录文件夹中非大小固定的文件夹的大小。电子设备累加根目录文件夹下所有文件夹的大小,确定根目录文件夹的大小。
79.以下对本公开实施例提供的确定文件夹大小的方法进行示例性说明:
80.本公开提供的确定文件夹大小的方法可以应用于电子设备。
81.一些实施例中,电子设备可以是终端,也可以是其他用于进行确定文件夹大小的电子设备,本公开对此不作限定。
82.其中,终端可以是手机、平板电脑、桌面型、膝上型、手持计算机、笔记本电脑、超级移动个人计算机(ultra

mobile personal computer,umpc)、上网本,以及蜂窝电话、个人数字助理(personal digital assistant,pda)、增强现实(augmented reality,ar)\虚拟现实(virtual reality,vr)设备等可以安装并使用内容社区应用(如快手)的设备,本公开对该电子设备的具体形态不作特殊限制。其可以与用户通过键盘、触摸板、触摸屏、遥控器、语音交互或手写设备等一种或多种方式进行人机交互。
83.下面结合附图对本技术实施例提供的确定文件夹大小的方法进行详细介绍。
84.图1是根据一示例性实施例示出的一种确定文件夹大小的方法的流程图,如图1所示,确定文件夹大小的方法用于确定文件夹大小的场景中,包括以下s100

s103。
85.s100、电子设备获取索引文件。
86.其中,索引文件包括至少一个固定文件夹中每一固定文件夹的相对路径,以及每一固定文件夹的大小;固定文件夹为根目录文件夹的各级子文件夹中大小固定的子文件夹,相对路径为根目录文件夹中的子文件夹相对于根目录文件夹的路径。
87.可选的,在本公开实施例中,索引文件可以是存储在存储空间中的特定格式的文件或者,索引文件还可以是写在电子设备的内存中的索引文件。
88.当索引文件是存储在存储空间中的特定格式的文件时,一种示例,索引文件可以是存储在存储空间中的标识为index.dat的文件。在该情况下,电子设备获取索引文件时,可以通过将硬盘中的index.dat文件加载到内存中,确定索引文件指示的固定文件夹的相对路径;以及每个固定文件夹的大小。此时,索引文件可以存储在待扫描的根目录文件夹中。
89.当索引文件是写在电子设备的内存中的索引文件时,电子设备可以通过直接在内存中加载该索引文件,确定索引文件指示的固定文件夹的相对路径;以及每个固定文件夹的大小。此时,索引文件可以以程序编码的形式写入到电子设备的内存中。
90.一种示例,索引文件的格式可以参考如下表1:
91.表1
92.子文件夹相对路径子文件夹的大小.emoji/resource2343.magic_emoji/resource/12812430filter_resource/121048
93.s101、电子设备读取索引文件,确定每一固定文件夹的大小。
94.可选的,为了确定索引文件中存储的固定文件夹对应的根目录文件夹下的子文件夹。电子设备读取索引文件确定每一固定文件夹的相对路径。电子设备获取根目录文件夹下每一子文件夹之后,确定该子文件夹的相对路径。电子设备匹配该子文件夹的相对路径与索引文件中存储固定文件夹的相对路径是否相同。若相同,电子设备确定该子文件夹为固定大小的子文件夹,且该子文件夹的大小为与其相对路径相同的固定文件夹的大小。
95.s102、电子设备递归扫描根目录文件夹中至少一个固定文件夹以外的子文件夹的大小。
96.可选的,在s101之后,电子设备确定了根目录文件夹中至少一个固定文件夹的大小。针对至少一个固定文件夹以外的子文件夹,由于这些子文件夹的大小是未知的,或者这些子文件夹的大小是不固定的。因此,电子设备通过递归扫描的方式,确定至少一个固定文件夹以外的子文件夹的大小。
97.s103、电子设备根据每一固定文件夹的大小,以及至少一个固定文件夹以外的子文件夹的大小,确定根目录文件夹的大小。
98.可选的,电子设备累加每一固定文件夹的大小,以及至少一个固定文件夹以外的子文件夹的大小,并将累加的结果,作为根目录文件夹的大小。
99.可选的,电子设备递归扫描根目录文件夹,逐级获取一级子文件夹的相对路径,二级子文件夹的相对路径直至最后一级子文件夹的相对路径。电子设备首先确定一级子文件夹中是否存在固定文件夹(也即与索引目录中的相对路径相同的子文件夹),若存在则标记该一级子文件夹的大小。电子设备跳过该为固定文件夹的一级子文件夹,并继续递归扫描其他一级子文件夹。
100.然后电子设备确定这些其他一级子文件夹下的二级子文件夹,并确定一级子文件夹中是否存在固定文件夹,若存在则标记该二级子文件夹的大小。电子设备跳过该二级子文件夹,并继续递归扫描其他二级子文件夹。
101.根据上述方式电子设备逐次递归扫描每一级子文件夹,直至标记出根目录文件夹下全部固定文件夹,以及扫描确定非固定文件夹中最后一级子文件夹的大小。电子设备采用递归计算的方式,确定根目录文件夹的大小。
102.上述实施例提供的技术方案至少带来以下有益效果:当电子设备需要确定根目录文件夹的大小时,电子设备首先根据索引文件确定固定文件夹的大小,然后采用扫描文件夹大小的方式确定固定文件夹以外的文件夹的大小。由于索引文件中具有固定文件夹的相对路径,以及固定文件夹的大小。因此,在子文件夹为大小固定的文件夹时,电子设备可直接根据子文件夹相对路径确定子文件夹的大小。相比较于扫描子文件夹确定子文件夹大小的方式,根据索引文件确定子文件夹大小仅需简单的比对相对路径即可直接确定索引文件指示的文件夹的大小,大大降低了电子设备扫描子文件夹所需的时间,进而提高了电子设
备扫描根目录文件夹的效率。
103.一种可能的实现方式中,电子设备可以通过遍历根目录文件夹下的子文件夹的相对路径,并与索引文件中的相对路径匹配。电子设备确定相对路径匹配成功的子文件夹为根目录文件夹下大小固定的子文件夹,通过索引文件确定这些子文件夹的大小。对于根目录文件夹下的其他子文件夹,电子设备通过扫描的方式确定这些子文件夹的大小。
104.可选的,结合图1,如图2所示,上述s103具体可以通过以下s200

s206实现。以下进行具体说明:
105.s200、电子设备获取索引文件,确定每一固定文件夹的相对路径。
106.可选的,电子设备获取的索引文件可以为如上述表1中所示的索引文件。在该情况下,电子设备确定的固定文件夹的相对路径包括:.emoji/resource,.magic_emoji/resource/128,filter_resource/12。
107.s201、电子设备递归扫描所述根目录文件夹,获取每一第一子文件夹的相对路径。
108.其中,第一子文件夹为根目录文件夹中的各级子文件夹中任一子文件夹。
109.s202、电子设备确定索引文件中是否存在与第一子文件夹的相对路径相同的相对路径。
110.可选的,电子设备获取第一子文件夹的相对路径之后,根据第一子文件夹的相对路径与索引文件中存储的相对路径分别进行匹配,直至从索引文件中匹配到与第一子文件夹的相对路径相同的相对路径,或者索引文件中的相对路径已全部匹配完成。
111.若电子设备从索引文件中匹配到与第一子文件夹的相对路径相同的相对路径,则电子设备确定索引文件中存在与第一子文件夹的相对路径相同的相对路径。
112.若电子设备确定索引文件中的相对路径已全部匹配完成,且未匹配到与第一子文件夹的相对路径相同的相对路径,则电子设备索引文件中不存在与第一子文件夹的相对路径相同的相对路径。
113.需要指出的是,索引文件中是否存在与第一子文件夹的相对路径相同的相对路径,影响电子设备后续执行的步骤。以下将分情况进行说明:
114.情况1、电子设备确定索引文件中存在与第一子文件夹的相对路径相同的相对路径。
115.在该情况下,电子设备根据以下s203确定第一子文件夹的大小。
116.s203、电子设备确定所述第一子文件夹为固定文件夹,并确定所述与第一子文件夹的相对路径相同的相对路径对应的固定文件夹的大小,为所述第一子文件夹的大小。
117.具体来说,电子设备在上述s202中已经确定了索引文件中存在与第一子文件夹的相对路径相同的相对路径。基于此,电子设备可以确定该与第一子文件夹的相对路径相同的相对路径对应的固定文件夹即为第一文件夹。电子设备确定该固定文件夹的大小即为第一子文件夹的大小。
118.可选的,在索引文件以表格的形式存储的情况下,电子设备确定第一子文件夹相对路径之后,将第一子文件夹相对路径与索引文件表格中的相对路径逐一进行匹配。若匹配到相同的路径,则确定该第一子文件夹为大小固定的文件夹。此时,电子设备将不在扫描第一子文件夹的大小,直接将表格中与该相对路径对应的值确定为第一子文件夹的大小。
119.举例来说,电子设备确定第一子文件夹相对路径为:.emoji/resource。电子设备
根据第一文件夹相对路径与索引文件中存储的相对路径进行匹配,确定索引文件中存在与该相对路径向匹配的子文件夹相对路径。此时,直接将索引文件中子文件夹相对路径“.emoji/resource”对应的子文件夹大小2343作为该子文件夹的大小。
120.情况2、电子设备确定索引文件中不存在与第一子文件夹的相对路径相同的相对路。
121.在该情况下,电子设备根据以下s204确定第一子文件夹的大小。
122.s204、电子设备确定所述第一子文件夹为非固定文件夹,并递归扫描确定所述第一子文件夹的大小。
123.具体来说,电子设备在上述s202中,确定索引文件中不存在与第一子文件夹的相对路径相同的子文件夹。因此,电子设备可以确定第一子文件夹为大小不固定的子文件夹,或者大小固定但是为存储在索引文件中的子文件夹。此时,电子设备可以通过递归扫描的方式确定第一子文件夹的大小。
124.上述实施例提供的技术方案至少带来以下有益效果:电子设备将根目录文件夹下的子文件夹的相对路径与索引文件中存储的相对路径进行匹配,从而准确区分出根目录文件夹下的子文件夹是否为大小固定且已知大小的文件夹。电子设备根据索引文件确定根目录文件夹下大小固定且已知大小的文件夹的大小,并通过递归扫描的方式确定其他文件夹的大小。降低了确定目录大小固定的文件夹的大小的时间。
125.可选的,如图2所示,在电子设备通过上述s203或s204中记载的方案确定了第一文件夹的大小之后,电子设备还可以通过以下s205和s206确定根目录文件夹的大小。以下对s205和s206进行详细说明:
126.s205、电子设备确定是否遍历根目录文件夹下的全部子文件夹。
127.其中,电子设备是否遍历根目录文件夹下的全部子文件夹,影响电子设备后续的执行动作,以下将分场景进行说明:
128.场景1、电子设备未遍历根目录文件夹下的全部子文件夹。
129.其中,在该场景下,电子设备从未遍历的文件夹中重新确定第一子文件夹,并依次执行以上s201

s205,直至电子设备确定遍历完成根目录文件夹下的全部子文件夹。在此之后,电子设备执行以下s206。
130.场景2、电子设备已遍历根目录文件夹下的全部子文件夹。
131.在场景2中,电子设备通过以下s206,确定根目录文件夹的大小。
132.s206、电子设备根据每一所述第一子文件夹的大小,递归计算所述根目录文件夹的大小。
133.可选的,电子设备读取索引文件确定根目录文件夹下全部已知大小的且大小固定的子文件夹的大小。电子设备通过扫描的方式确定最后一级子文件夹的大小。然后电子设备采用递归计算的方式依次计算上级子文件夹的大小,直至确定根目录文件夹的大小。其中,电子设备确定第i子文件夹的大小为该第i级子文件夹中每一第i 1级子文件夹的大小之和,i为正整数。
134.需要指出的是,在上述s201

s204中,电子设备可以每次确定一个子文件夹相对路径,并确定该子文件夹的大小。或者,电子设备可以每次确定多个子文件夹相对路径,并采用并行处理的方式,同时确定多个子文件夹的大小。又或者,电子设备可以每次确定多个子
文件夹相对路径,然后采用串行处理的方式,依次确定每个子文件夹的大小。本公开对此不做限定。
135.可选的,在电子设备获取索引文件之前,电子设备还可以确定并标记根目录文件夹下的固定文件夹。
136.如图3所示,电子设备确定并标记根目录文件夹下的固定文件夹至少包括以下s300

s304,以下进行详细说明。
137.s300、电子设备获取根目录文件夹下的子文件夹。
138.具体来说,针对已在电子设备中安装的应用程序,电子设备可以通过直接读取根目录文件夹下各个子文件夹的方式,获取根目录文件夹下的子文件夹。
139.s301、电子设备确定子文件夹是否为大小固定的文件夹。
140.需要指出的是,电子设备确定子文件夹是否为大小固定的文件夹的方法至少包括:以下方式1、方式2。
141.方式1、电子设备每间隔固定周期扫描子文件夹的大小,确定子文件夹的大小在不同周期内是否发生变化。若未发生变化,则确定该子文件夹为大小固定的子文件夹。
142.方式2、通过人工标注的方式,确定大小固定的文件夹。
143.具体来说,电子设备接收第一操作,第一操作用于指示目标文件夹为大小固定的文件夹。电子设备根据第一操作确定大小固定的文件夹。
144.可选的,在方式2中,第一操作还可以直接用于指示电子设备标注目标文件夹为固定的大小的文件夹。
145.需要说明的是,上述方式1和方式2仅用于举例说明电子设备确定子文件夹是否为大小固定的文件夹的方法,不应理解成对其限定。电子设备还可以通过其他方法确定子文件夹是否为大小固定的文件夹,本技术对此不做限定。
146.s302、当子文件夹为大小固定的子文件夹时,电子设备为该子文件夹添加第一标识。
147.其中,第一标识用于标识子文件夹为大小固定的文件夹。
148.需要指出的是,以上s300

s302中记载了电子设备确定固定文件夹,并为固定文件夹添加标识的方法。在具体实现过程中,还可以直接在应用程序开发阶段为子文件夹添加第一标识。具体为:
149.在应用程序开发阶段,为应用程序创建各个子文件夹过程中,确定每一子文件夹是否为大小固定的子文件夹。若是,则为子文件夹添加第一标识。这样,在电子设备安装该应用程序时,可以直接根据子文件夹中的第一标识确定该子文件夹为大小固定的子文件夹。其中,在应用程序开发阶段为子文件夹添加第一标识的方式与上述s300

s302中的过程类似,本公开对此不在赘述。
150.上述实施例提供的技术方案至少带来以下有益效果:,电子设备在扫描根目录文件之前首先为大小固定的文件夹添加第一标识。这样,电子设备可以直接根据第一标识确定根目录文件夹下的子文件夹是否为大小固定的文件夹,从而为后续建立索引文件以及更新索引文件提供依据。
151.可选的,如图3所示,在电子设备确定子文件夹为大小固定的文件夹时,电子设备还可以进一步确定子文件夹的大小,并创建索引文件。具体的,电子设备可以通过执行以下
s303和s304确定子文件夹的大小,以及创建索引文件。
152.s303、电子设备扫描子文件夹,确定子文件夹的大小。
153.一种实现方式中,电子设备可以采用递归扫描的方法,确定子文件夹的大小。本技术对此不在赘述。
154.s304、电子设备根据子文件夹相对路径,以及子文件夹的大小,生成索引文件。
155.可选的,电子设备在确定子文件的大小之后,确定子文件夹相对于根目录的子文件夹相对路径,并将子文件夹相对路径和子文件夹大小统一写入到索引文件。
156.上述实施例提供的技术方案至少带来以下有益效果:,电子设备在确定根目录文件夹的大小之前,首先确定大小固定的子文件夹,以及这些子文件夹的大小。电子设备根据子文件夹相对路径,以及子文件夹的大小,生成索引文件。这样,电子设备在确定根目录文件夹的大小时,可以直接根据索引文件确定固定文件夹的大小。提高了电子设备确定根目录文件夹大小的效率。
157.需要指出的是,电子设备可以在初始阶段为根目录文件夹生成索引文件,在此之后电子设备每次确定根目录文件夹的大小时,直接根据该索引文件即可确定根目录文件夹下固定文件夹的大小。
158.或者,电子设备也可以在首次确定根目录文件夹的大小时生成创建一个初始索引文件,然后通过识别根目录下具有第一标识的子文件夹,以及扫描确定具有第一标识的子文件夹的大小的方式,将根目录文件夹下的固定文件相对路径和大小写入到索引文件中,得到索引文件。在之后的每次扫描中,电子设备根据前一次扫描确定根目录文件夹的大小时生成的索引文件确定当前根目录文件夹的大小。
159.可选的,结合图2,如图4所示,方法还包括以下s400和s401:
160.其中,在s100之前,电子设备执行以下s400。
161.s400、电子设备扫描根目录文件夹,确定根目录文件夹下是否包括索引文件。
162.其中,当根目录文件夹下存在索引文件时,电子设备直接执行s100、电子设备获取索引文件。
163.当根目录文件夹下不存在索引文件时,电子设备首先执行以下s401,在s401之后,电子设备执行s100。
164.s401、电子设备创建索引文件。
165.可选的,电子设备可以在根目录文件夹下创建索引文件。在该步骤中,电子设备创建的索引文件可以是一个空的索引文件;或者,电子设备创建的索引文件中可以包括部分或全部固定文件的相对路径和大小,本技术对此不做限定。
166.在s401之后,电子设备执行s100。
167.上述实施例提供的技术方案至少带来以下有益效果:在根目录文件夹中不存在索引文件时,电子设备可以通过创建索引文件的方式在根目录文件夹中添加索引文件,避免了根目录文件夹中不存在索引文件导致的本公开提供的确定文件夹大小的方法无法适用的情况。此外,结合下述对索引文件的更新过程,在首次确定根目录文件夹的大小时,即使创建了空的索引文件,也可以通过后续对索引文件的更新来降低后续确定根目录文件夹大小时的时间。
168.一种可能的实现方式中,电子设备在s100中获取的索引文件可能没有包括根目录
文件夹下的全部固定文件夹。针对没有写入到索引文件中的固定文件夹,电子设备在每次确定根目录文件夹大小的过程中,仍需要采用递归扫描的方式确定固定文件夹的大小。
169.为了避免这种情况,本技术可以通过以下s402

s404对索引文件进行更新,以确定索引文件中包括根目录文件夹下每一个具有第一标识的固定文件夹的相对路径和大小。以下,对s402

s404进行具体说明:
170.s402、电子设备确定第一文件夹是否包括第一标识。
171.其中,在第一文件夹包括第一标识的情况下,电子设备可以通过以下s403和s404对索引文件进行更新。
172.s403、电子设备确定子文件夹的大小和子文件夹相对路径。
173.其中,电子设备确定子文件夹的大小,可以为上述s104中,电子设备通过扫描确定的子文件夹的大小。电子设备确定的子文件夹相对路径,可以为上述s101中电子设备确定的子文件夹相对路径。
174.或者电子设备还可以通过其他方式确定子文件夹的大小和子文件夹相对路径,本技术对此不做限定。
175.s404、电子设备更新索引文件。
176.可选的,电子设备将子文件夹的大小和子文件夹相对路径写入到索引文件中,生成新的索引文件。
177.举例来说,电子设备确定子文件夹相对路径为.magic_emoji/resource/129,子文件夹大小为13830。电子设备将子文件夹相对路径和子文件夹大小写入到如表1所示的索引文件中,得到如下表2所示的新的索引文件。
178.表2
179.子文件夹相对路径子文件夹的大小.emoji/resource2343.magic_emoji/resource/12812430filter_resource/121048.magic_emoji/resource/12913830
180.上述实施例提供的技术方案至少带来以下有益效果:,电子设备在每次扫描到未添加到索引文件中的大小固定的文件夹时都可以对索引文件进行更新,增加了索引文件指示的大小固定的文件夹的数量,进一步降低了确定根目录文件夹大小所需的时间。
181.可以理解的,在实际实施时,本公开实施例的电子设备可以包含有用于实现前述对应确定文件夹大小的方法的一个或多个硬件结构和/或软件模块,这些执行硬件结构和/或软件模块可以构成一个电子设备。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的算法步骤,本公开能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本公开的范围。
182.基于这样的理解,本公开实施例还对应提供一种确定文件夹大小的装置,可以应用于电子设备。图5示出了本公开实施例提供的确定文件夹大小的装置的结构示意图。如图5所示,该确定文件夹大小的装置可以包括:获取模块501和处理模块502。
183.获取模块501,用于获取索引文件,索引文件包括至少一个固定文件夹中每一固定文件夹的相对路径,以及每一固定文件夹的大小;固定文件夹为根目录文件夹的各级子文件夹中大小固定的子文件夹,相对路径为根目录文件夹中的子文件夹相对于根目录文件夹的路径;
184.处理模块502,用于读取索引文件,确定每一固定文件夹的大小;
185.处理模块502,还用于扫描确定根目录文件夹中至少一个固定文件夹以外的子文件夹的大小;
186.处理模块502,还用于根据每一固定文件夹的大小,以及至少一个固定文件夹以外的子文件夹的大小,确定根目录文件夹的大小。
187.可选的,处理模块502,具体用于:
188.读取索引文件,确定每一固定文件夹的相对路径;
189.指示获取模块501获取第一子文件夹的相对路径;第一子文件夹为根目录文件夹中的任一子文件夹;
190.确定索引文件中是否存在第二子文件夹;第二子文件夹为与第一子文件夹相对路径相同的固定文件夹;
191.若是,确定第二子文件夹的大小为第一文件夹的大小;
192.若否,扫描确定第一子文件夹的大小;
193.累加根目录文件夹中每一第一子文件夹的大小,确定根目录文件夹的大小。
194.可选的,获取模块501,还用于获取根目录文件夹下的子文件夹;
195.处理模块502,还用于当子文件夹为大小固定文件夹时,为子文件夹添加第一标识;第一标识用于标识子文件夹为固定文件夹。
196.可选的,处理模块502,还用于:
197.当第一子文件夹包括第一标识时,更新索引文件;更新后的索引文件还用于指示第一子文件夹相对于根目录文件夹的相对路径,以及第一子文件夹的大小。
198.可选的,索引文件为存储在硬盘中的文件;或,索引文件为写入到内存中的文件。
199.可选的,处理模块502,还用于:
200.扫描根目录文件夹;
201.当根目录文件夹中不包括索引文件时,创建索引文件。
202.本公开实施例还提供一种电子设备,终端可以是手机、电脑等用户终端。图6示出了本公开实施例提供的电子设备的结构示意图。该电子设备可以是确定文件夹大小的装置可以包括至少一个处理器61,通信总线62,存储器63以及至少一个通信接口64。
203.处理器61可以是一个处理器(central processing units,cpu),微处理单元,asic,或一个或多个用于控制本公开方案程序执行的集成电路。作为一个示例,结合图5,电子设备中的处理模块实现的功能与图6中的处理器61实现的功能相同。
204.通信总线62可包括一通路,在上述组件之间传送信息。
205.通信接口64,使用任何收发器一类的装置,用于与其他设备或通信网络通信,如服务器、以太网,无线接入网(radio access network,ran),无线局域网(wireless local area networks,wlan)等。作为一个示例,结合图5,电子设备中的获取模块501和实现的功能与图6中的通信接口64实现的功能相同。
206.存储器63可以是只读存储器(read

only memory,rom)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,ram)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically erasable programmable read

only memory,eeprom)、只读光盘(compact disc read

only memory,cd

rom)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器可以是独立存在,通过总线与处理单元相连接。存储器也可以和处理单元集成在一起。
207.其中,存储器63用于存储执行本公开方案的应用程序代码,并由处理器61来控制执行。处理器61用于执行存储器63中存储的应用程序代码,从而实现本公开方法中的功能。
208.在具体实现中,作为一种实施例,处理器61可以包括一个或多个cpu,例如图6中的cpu0和cpu1。
209.在具体实现中,作为一种实施例,电子设备可以包括多个处理器,例如图6中的处理器61和处理器65。这些处理器中的每一个可以是一个单核(single

cpu)处理器,也可以是一个多核(multi

cpu)处理器。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。
210.在具体实现中,作为一种实施例,电子设备还可以包括输入设备66和输出设备67。输入设备66和输出设备67通信,可以以多种方式接受用户的输入。例如,输入设备66可以是鼠标、键盘、触摸屏设备或传感设备等。输出设备67和处理器61通信,可以以多种方式来显示信息。例如,输出设备61可以是液晶显示器(liquid crystal display,lcd),发光二级管(light emitting diode,led)显示设备等。
211.本领域技术人员可以理解,图6中示出的结构并不构成对终端的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
212.本公开还提供了一种包括指令的计算机可读存储介质,计算机可读存储介质上存储有指令,当计算机可读存储介质中的指令由计算机设备的处理器执行时,使得计算机能够执行上述所示实施例提供的确定文件夹大小的方法。例如,计算机可读存储介质可以为包括指令的存储器63,上述指令可由电子设备的处理器61执行以完成上述方法。又例如,计算机可读存储介质可以为包括指令的存储器,上述指令可由服务器的处理器执行以完成上述方法。可选地,计算机可读存储介质可以是非临时性计算机可读存储介质,例如,非临时性计算机可读存储介质可以是rom、ram、cd

rom、磁带、软盘和光数据存储设备等。
213.本公开还提供了一种计算机程序产品,该计算机程序产品包括计算机指令,当计算机指令在电子设备上运行时,使得电子设备执行上述图1

图4任一附图所示的确定文件夹大小的方法。
214.本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
215.应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献