CN102654895A - 一种生成扫描目录树的方法及装置 - Google Patents
一种生成扫描目录树的方法及装置 Download PDFInfo
- Publication number
- CN102654895A CN102654895A CN2011100512576A CN201110051257A CN102654895A CN 102654895 A CN102654895 A CN 102654895A CN 2011100512576 A CN2011100512576 A CN 2011100512576A CN 201110051257 A CN201110051257 A CN 201110051257A CN 102654895 A CN102654895 A CN 102654895A
- Authority
- CN
- China
- Prior art keywords
- directory
- scanning
- path information
- tree
- unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种生成扫描目录树的方法,该方法主要包括:获取已保存的目录路径信息;将所获取的目录路径信息映射到当前生成的扫描目录树上,标识所述扫描目录树节点的状态。本发明还公开了一种生成扫描目录树的装置,本发明提供了目录树的动态记忆功能,不需要用户重新选择目录,大大减少了用户操作成本,使得最终显示的目录树界面更加直观,增强了用户体验。
Description
技术领域
本发明涉及安全防护技术,尤其涉及一种生成扫描目录树的方法及装置。
背景技术
目前,在安全防护软件中,自定义扫描目录树一般采用普通目录树和二重目录树的形式。
其中,普通目录树的结构如图1所示,每次打开目录树时,需要重新选择扫描路径,不仅增加了用户操作成本,而且用户也不能查看历史扫描记录。
二重目录树的结构如图2所示,该目录树虽然提供了历史选择路径的备份功能,但是,在第二次打开目录树时,不仅目录树的界面展现不直观,而且需要进行重新选取目录的操作,增加了用户操作成本。
发明内容
有鉴于此,本发明的主要目的在于提供一种生成扫描目录树的方法及装置,以解决现有目录树在扫描时用户操作成本高的问题。
为达到上述目的,本发明的技术方案是这样实现的:
本发明提供了一种生成扫描目录树的方法,所述方法包括:
获取已保存的目录路径信息;
将所获取的目录路径信息映射到当前生成的扫描目录树上,标识所述扫描目录树节点的状态。
在上述方案中,在获取已保存的目录路径信息之前,所述方法还包括:在上次生成扫描目录树时,缓存所生成扫描目录树的目录路径信息;并对所缓存的目录路径信息进行去重后保存。
在上述方案中,对所缓存的目录路径信息进行去重,包括:遍历所缓存的目录路径信息,查找所述目录路径信息中路径最短的各目录,采用字符串匹配算法查询所述各目录下子目录的目录路径信息,并删除。
在上述方案中,所述将所获取的目录路径信息映射到当前生成的扫描目录树上,标识所述扫描目录树节点的状态,包括:将所获取的目录路径信息映射到当前生成的扫描目录树上,将所述当前生成的扫描目录树上的、与所述目录路径信息匹配的目录路径上各目录标识为选中状态。
在上述方案中,所述标识所述扫描目录树上节点的状态,还包括:所述当前生成的扫描目录上父目录的所有子目录均处于选中状态时,将所述父目录标识为选中状态。
在上述方案中,所述标识所述扫描目录树上节点的状态,还包括:所述当前生成的扫描目录上父目录的部分子目录处于选中状态时,将所述父目录标识为半选状态。
本发明还提供了一种生成扫描目录树的装置,所述装置包括存储单元、获取单元和标识单元,其中,
存储单元,用于保存上次生成扫描目录树时的目录路径信息;
获取单元,用于获取所述存储单元已保存的目录路径信息;
标识单元,用于将所述获取单元获取的目录路径信息映射到当前生成的扫描目录树上,标识所述扫描目录树节点的状态。
在上述方案中,所述装置还包括缓存单元和存储单元,其中,
缓存单元,在生成扫描目录树时,缓存所述扫描目录树的目录路径信息;
去重单元,用于对所述缓存单元所缓存的目录路径信息进行去重后保存到所述存储单元。
在上述方案中,所述去重单元,具体用于,遍历所述缓存单元缓存的目录路径信息,查找所述目录路径信息中路径最短的各目录,采用字符串匹配算法查询所述各目录下子目录的目录路径信息并删除,并将剩余的目录路径信息保存到所述存储单元。
在上述方案中,所述标识单元,具体用于,将所述获取单元获取的目录路径信息映射到当前生成的扫描目录树上,将所述当前生成的扫描目录树上的、与所述目录路径信息匹配的目录路径上各目录标识为选中状态。
在上述方案中,所述标识单元,还用于在所述当前生成的扫描目录上父目录的所有子目录均处于选中状态时,将所述父目录标识为选中状态。
在上述方案中,所述标识单元,还用于在所述当前生成的扫描目录上父目录的部分子目录处于选中状态时,将所述父目录标识为半选状态。
本发明所提供的生成扫描目录树的方法及装置,在上次生成扫描目录树时保存目录路径信息,之后,通过获取保存的目录路径信息,在当前生成的扫描目录树上标识节点状态,提供了目录树的动态记忆功能,不需要用户重新选择目录,大大减少了用户操作成本,使得最终显示的目录树界面更加直观,增强了用户体验。
附图说明
图1为普通目录树的结构示意图;
图2为二重目录树的结构示意图;
图3为本发明生成扫描目录树的方法的实现流程图;
图4为本发明生成扫描目录树的装置的组成结构示意图;
图5为本发明一种实施例的实现过程示意图;
图6为本发明一种实施例中去重处理过程的流程示意图;
图7为保存目录路径信息的目录信息历史文件的一种实例示意图;
图8为本发明一种实施例中标识扫描目录树中节点状态的流程示意图;
图9为本发明生成的扫描目录树的一种实例示意图。
具体实施方式
本发明的基本思想是:利用文件读写原理,结合动态解析和去重策略,保存之前扫描时的目录信息,再次生成扫描目录树时,通过读取历史目录信息,利用动态匹配策略,映射到所述扫描目录树中,标识目录状态。
本发明的生成扫描目录树的方法,参照图3所示,主要包括:
步骤301:获取已保存的目录路径信息;
步骤302:将所获取的目录路径信息映射到当前生成的扫描目录树上,标识所述扫描目录树节点的状态。
具体地,在步骤301之前,所述方法还包括:在上次生成扫描目录树时,缓存所生成扫描目录树的目录路径信息;并对所缓存的目录路径信息进行去重后保存。
具体地,对所缓存的目录路径信息进行去重的过程包括:遍历所缓存的目录路径信息,查找所述目录路径信息中路径最短的各目录,采用字符串匹配算法查询所述各目录下子目录的目录路径信息,并删除。
其中,将所获取的目录路径信息映射到当前生成的扫描目录树上,标识所述扫描目录树节点的状态,可以包括:将所获取的目录路径信息映射到当前生成的扫描目录树上,将所述当前生成的扫描目录树上的、与所述目录路径信息匹配的目录路径上各目录标识为选中状态。
这里,标识所述扫描目录树节点的状态,还可以包括:所述当前生成的扫描目录上父目录的所有子目录均处于选中状态时,将所述父目录标识为选中状态。
这里,标识所述扫描目录树节点的状态,还可以包括:所述当前生成的扫描目录上父目录的部分子目录处于选中状态时,将所述父目录标识为半选状态。
相应地,本发明还提供了一种生成扫描目录树的装置,如图4所示,所述装置主要包括:获取单元和标识单元,其中,存储单元,用于保存上次生成扫描目录树时的目录路径信息;获取单元,用于获取所述存储单元已保存的目录路径信息;标识单元,用于将所述获取单元获取的目录路径信息映射到当前生成的扫描目录树上,标识所述扫描目录树节点的状态。
其中,所述装置还可以包括:缓存单元和去重单元,其中,缓存单元用于在生成扫描目录树时缓存所述扫描目录树的目录路径信息;去重单元,用于对所述缓存单元所缓存的目录路径信息进行去重后保存到所述存储单元。
具体地,所述去重单元具体用于,遍历所述缓存单元缓存的目录路径信息,查找所述目录路径信息中路径最短的各目录,采用字符串匹配算法查询所述各目录下子目录的目录路径信息并删除,并将剩余的目录路径信息保存到所述存储单元。
所述标识单元,具体用于,将所述获取单元获取的目录路径信息映射到当前生成的扫描目录树上,将所述当前生成的扫描目录树上的、与所述目录路径信息匹配的目录路径上各目录标识为选中状态。
这里,所述标识单元,还可以用于在所述当前生成的扫描目录上父目录的所有子目录均处于选中状态时,将所述父目录标识为选中状态。
这里,所述标识单元,还可以用于在所述当前生成的扫描目录上父目录的部分子目录处于选中状态时,将所述父目录标识为半选状态。
实施例一
本实施例中,生成扫描目录树的过程,如图5所示,具体流程如下:
步骤1:动态遍历上次生成的扫描目录树,得到上次所生成扫描目录树的目录路径信息,并缓存所得到的目录路径信息;
步骤3:对所缓存的目录路径信息进行去重后,得到有效的目录路径信息;
步骤4:将所得到有效的目录路径信息保存到目录信息历史文件中;
步骤5:生成当前的扫描目录树,读取所述目录信息历史文件,获取其中保存的目录路径信息;
步骤6:将所获取的目录路径信息映射到当前所生成的扫描目录树,进行动态匹配;
步骤7:标识当前生成的扫描目录树中与所述目录路径信息匹配的目录路径上的节点;
步骤8:将当前生成的扫描目录树展开,显示所述扫描目录树。
具体地,步骤3中对所缓存的目录路径信息进行去重后,得到有效的目录路径信息的过程,参照图6所示,具体流程如下:
步骤601:去重单元获取缓存单元中缓存的目录路径信息;
步骤602:采用短路径优先策略遍历所获取的目录路径信息,查找所述目录路径信息中路径最短的各目录;
步骤603:验证所查找到各目录中是否有目录存在子目录,如果是,继续步骤604,否则,继续步骤606;
步骤604~605:采用字符串匹配算法遍历得到所述目录下子目录的目录路径信息,删除遍历得到的目录路径信息,并返回步骤603;
步骤606:保存所查找到的、路径最短的各目录;
步骤607:将剩余的目录路径信息作为有效的目录路径信息保存,完成目录路径信息的去重处理。
经过去重处理后,将有效的目录路径信息保存为目录信息历史文件,图7为一种目录信息历史文件的实例。
其中,获取目录路径信息,将所获取的目录路径信息映射到当前所生成的扫描目录树,并标识节点的过程,参照图8所示,具体流程如下:
步骤801:读取目录信息历史文件,获取已保存的目录路径信息;
步骤802:通过动态匹配策略,将所获取的目录路径信息映射到当前生成的扫描目录树上,验证当前生成的扫描目录树上是否存在与所述目录路径信息匹配的目录路径,如果存在,则继续步骤803;否则,直接进入步骤808;
这里,动态匹配策略具体为:建立目录文件和目录树之间的动态映射,在目录文件中的目录路径信息发生修改时,通过将目录路径信息和目录树上的目录路径进行字符串比较,实时更新目录树上的目录状态信息。
步骤803:将当前生成的扫描目录树的、与所述目录路径信息匹配的目录路径上各节点标识为选中状态;
步骤804:验证当前生成的扫描目录树上各父目录的状态,如果所有父目录均处于选中状态,则直接接入步骤808;如果有父目录未处于选中状态,则继续步骤805;
步骤805~807:验证当前生成的扫描目录树上各父目录下所有子目录的状态,如果所有子目录均处于选中状态,则继续步骤806,将所述父目录标识为选中状态;如果部分子目录处于选中状态,则继续步骤807,将所述父目录标识为半选状态,否则,直接进入步骤808;
步骤808:显示当前生成的扫描目录树、以及该扫描目录树上各节点的状态。
例如,最终显示的扫描目录树可以如图9所示,其中,部分父目录处于选中状态。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
Claims (12)
1.一种生成扫描目录树的方法,其特征在于,所述方法包括:
获取已保存的目录路径信息;
将所获取的目录路径信息映射到当前生成的扫描目录树上,标识所述扫描目录树节点的状态。
2.根据权利要求1所述生成扫描目录树的方法,其特征在于,在获取已保存的目录路径信息之前,所述方法还包括:
在上次生成扫描目录树时,缓存所生成扫描目录树的目录路径信息;并对所缓存的目录路径信息进行去重后保存。
3.根据权利要求2所述生成扫描目录树的方法,其特征在于,对所缓存的目录路径信息进行去重,包括:
遍历所缓存的目录路径信息,查找所述目录路径信息中路径最短的各目录,采用字符串匹配算法查询所述各目录下子目录的目录路径信息,并删除。
4.根据权利要求1所述生成扫描目录树的方法,其特征在于,所述将所获取的目录路径信息映射到当前生成的扫描目录树上,标识所述扫描目录树节点的状态,包括:
将所获取的目录路径信息映射到当前生成的扫描目录树上,将所述当前生成的扫描目录树上的、与所述目录路径信息匹配的目录路径上各目录标识为选中状态。
5.根据权利要求4所述生成扫描目录树的方法,其特征在于,所述标识所述扫描目录树上节点的状态,还包括:
所述当前生成的扫描目录上父目录的所有子目录均处于选中状态时,将所述父目录标识为选中状态。
6.根据权利要求4或5所述生成扫描目录树的方法,其特征在于,所述标识所述扫描目录树上节点的状态,还包括:
所述当前生成的扫描目录上父目录的部分子目录处于选中状态时,将所述父目录标识为半选状态。
7.一种生成扫描目录树的装置,其特征在于,所述装置包括存储单元、获取单元和标识单元,其中,
存储单元,用于保存上次生成扫描目录树时的目录路径信息;
获取单元,用于获取所述存储单元已保存的目录路径信息;
标识单元,用于将所述获取单元获取的目录路径信息映射到当前生成的扫描目录树上,标识所述扫描目录树节点的状态。
8.根据权利要求7所述生成扫描目录树的装置,其特征在于,所述装置还包括缓存单元和存储单元,其中,
缓存单元,在生成扫描目录树时,缓存所述扫描目录树的目录路径信息;
去重单元,用于对所述缓存单元所缓存的目录路径信息进行去重后保存到所述存储单元。
9.根据权利要求8所述生成扫描目录树的装置,其特征在于,所述去重单元,具体用于,
遍历所述缓存单元缓存的目录路径信息,查找所述目录路径信息中路径最短的各目录,采用字符串匹配算法查询所述各目录下子目录的目录路径信息并删除,并将剩余的目录路径信息保存到所述存储单元。
10.根据权利要求7所述生成扫描目录树的装置,其特征在于,所述标识单元,具体用于,将所述获取单元获取的目录路径信息映射到当前生成的扫描目录树上,将所述当前生成的扫描目录树上的、与所述目录路径信息匹配的目录路径上各目录标识为选中状态。
11.根据权利要求10所述生成扫描目录树的装置,其特征在于,所述标识单元,还用于在所述当前生成的扫描目录上父目录的所有子目录均处于选中状态时,将所述父目录标识为选中状态。
12.根据权利要求10或11所述生成扫描目录树的装置,其特征在于,所述标识单元,还用于在所述当前生成的扫描目录上父目录的部分子目录处于选中状态时,将所述父目录标识为半选状态。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110051257.6A CN102654895B (zh) | 2011-03-03 | 2011-03-03 | 一种生成扫描目录树的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110051257.6A CN102654895B (zh) | 2011-03-03 | 2011-03-03 | 一种生成扫描目录树的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102654895A true CN102654895A (zh) | 2012-09-05 |
CN102654895B CN102654895B (zh) | 2015-06-17 |
Family
ID=46730521
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110051257.6A Active CN102654895B (zh) | 2011-03-03 | 2011-03-03 | 一种生成扫描目录树的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102654895B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104991934A (zh) * | 2015-07-06 | 2015-10-21 | 无锡天脉聚源传媒科技有限公司 | 一种删除目录的方法及装置 |
CN106649596A (zh) * | 2016-11-24 | 2017-05-10 | 歌尔科技有限公司 | 一种智能终端中的文件夹目录的显示方法和装置 |
CN107247722A (zh) * | 2017-04-25 | 2017-10-13 | 北京金山安全软件有限公司 | 一种文件扫描方法、装置及智能终端 |
CN110619066A (zh) * | 2019-08-30 | 2019-12-27 | 视联动力信息技术股份有限公司 | 一种基于目录树的信息获取方法和装置 |
CN110688374A (zh) * | 2019-09-25 | 2020-01-14 | 政采云有限公司 | 一种对层级数据进行去重的方法、装置及介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1929393A (zh) * | 2005-09-07 | 2007-03-14 | 中兴通讯股份有限公司 | 一种网络优化系统中网元对象的三态树呈现和定位方法 |
US20090320134A1 (en) * | 2008-06-24 | 2009-12-24 | Corcoran Sean D | Detecting Secondary Infections in Virus Scanning |
CN101639831A (zh) * | 2008-07-29 | 2010-02-03 | 华为技术有限公司 | 一种搜索方法、装置及系统 |
-
2011
- 2011-03-03 CN CN201110051257.6A patent/CN102654895B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1929393A (zh) * | 2005-09-07 | 2007-03-14 | 中兴通讯股份有限公司 | 一种网络优化系统中网元对象的三态树呈现和定位方法 |
US20090320134A1 (en) * | 2008-06-24 | 2009-12-24 | Corcoran Sean D | Detecting Secondary Infections in Virus Scanning |
CN101639831A (zh) * | 2008-07-29 | 2010-02-03 | 华为技术有限公司 | 一种搜索方法、装置及系统 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104991934A (zh) * | 2015-07-06 | 2015-10-21 | 无锡天脉聚源传媒科技有限公司 | 一种删除目录的方法及装置 |
CN106649596A (zh) * | 2016-11-24 | 2017-05-10 | 歌尔科技有限公司 | 一种智能终端中的文件夹目录的显示方法和装置 |
CN107247722A (zh) * | 2017-04-25 | 2017-10-13 | 北京金山安全软件有限公司 | 一种文件扫描方法、装置及智能终端 |
CN107247722B (zh) * | 2017-04-25 | 2020-11-06 | 北京金山安全软件有限公司 | 一种文件扫描方法、装置及智能终端 |
CN110619066A (zh) * | 2019-08-30 | 2019-12-27 | 视联动力信息技术股份有限公司 | 一种基于目录树的信息获取方法和装置 |
CN110619066B (zh) * | 2019-08-30 | 2022-03-25 | 视联动力信息技术股份有限公司 | 一种基于目录树的信息获取方法和装置 |
CN110688374A (zh) * | 2019-09-25 | 2020-01-14 | 政采云有限公司 | 一种对层级数据进行去重的方法、装置及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN102654895B (zh) | 2015-06-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3561674B1 (en) | Method and apparatus for verifying block data in a blockchain | |
US8719237B2 (en) | Method and apparatus for deleting duplicate data | |
CN105426408B (zh) | 一种多索引的数据处理方法及装置 | |
CN105808609A (zh) | 一种信息点数据冗余的判别方法和设备 | |
CN105718455A (zh) | 一种数据查询方法及装置 | |
CN102654895A (zh) | 一种生成扫描目录树的方法及装置 | |
CN109446160A (zh) | 一种文件读取方法、系统、装置及计算机可读存储介质 | |
CN110888837B (zh) | 对象存储小文件归并方法及装置 | |
CN102236693A (zh) | 确定文档之间的相似度的方法和设备 | |
CN108021590A (zh) | 一种目标对象属性确定方法、属性更新方法及装置 | |
KR101993793B1 (ko) | 메모리 관리를 위한 보존 가비지 콜렉팅 및 정수 태깅 기법 | |
CN110659257B (zh) | 一种元数据对象修复方法、装置、设备及可读存储介质 | |
CN107111460A (zh) | 使用块文件的重复数据删除 | |
CN107247722A (zh) | 一种文件扫描方法、装置及智能终端 | |
CN104035822A (zh) | 一种低开销的高效内存去冗余方法及系统 | |
CN103927325A (zh) | 一种对url进行分类的方法及装置 | |
CN102955808A (zh) | 一种数据获取方法和分布式文件系统 | |
CN104572876A (zh) | 一种软件对应配置文件的读取方法和装置 | |
CN107526840A (zh) | 文件系统快照查询方法、装置及计算机可读存储介质 | |
CN105786939A (zh) | 优化内存数据库的方法及装置 | |
CN105989124A (zh) | Sqlite文件恢复自增主键值的方法及其系统 | |
JP2016045929A (ja) | ファイルをスキャンするための方法及び装置 | |
CN106469460B (zh) | 马赛克图像生成的方法和装置及电子设备 | |
CN108021472A (zh) | ReFS文件系统的格式化恢复方法及存储介质 | |
CN103914481B (zh) | 数据存储方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |