CN115391289A - 一种包含文件信息的目录结构生成方法及装置 - Google Patents

一种包含文件信息的目录结构生成方法及装置 Download PDF

Info

Publication number
CN115391289A
CN115391289A CN202210973214.1A CN202210973214A CN115391289A CN 115391289 A CN115391289 A CN 115391289A CN 202210973214 A CN202210973214 A CN 202210973214A CN 115391289 A CN115391289 A CN 115391289A
Authority
CN
China
Prior art keywords
file
folder
information
path
directory structure
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
Application number
CN202210973214.1A
Other languages
English (en)
Other versions
CN115391289B (zh
Inventor
郑桂
赖彦彰
卢超
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangzhou Xuanwu Wireless Technology Co Ltd
Original Assignee
Guangzhou Xuanwu Wireless Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Guangzhou Xuanwu Wireless Technology Co Ltd filed Critical Guangzhou Xuanwu Wireless Technology Co Ltd
Priority to CN202210973214.1A priority Critical patent/CN115391289B/zh
Publication of CN115391289A publication Critical patent/CN115391289A/zh
Application granted granted Critical
Publication of CN115391289B publication Critical patent/CN115391289B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/16File or folder operations, e.g. details of user interfaces specifically adapted to file systems
    • G06F16/168Details of user interfaces specifically adapted to file systems, e.g. browsing and visualisation, 2d or 3d GUIs
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种包含文件信息的目录结构生成方法及装置,所述方法包括:获取文件列表数据,所述文件列表数据包括若干个文件夹,每个文件夹包含若干个文件;从所述文件列表数据分别提取关于文件夹和对应文件的路径关系的文件目录结构,以及关于每个文件描述内容的信息,得到多个描述信息,每个描述信息对应一个文件;将所述多个描述信息分别添加至所述文件目录结构中,得到目录树结构。本发明可以在抽取各个文件的层级结构时,读取文件夹内每个文件的描述信息,将各个描述信息添加至层级结构中生成文件的目录树结构,不但可以通过层级结构了解各个文件之间的层级关系,也可以通过各个文件的描述信息流量文件内容,以简化查询流程,提高查询效率。

Description

一种包含文件信息的目录结构生成方法及装置
技术领域
本发明涉及文件夹目录处理的技术领域,尤其涉及一种包含文件信息的目录结构生成方法及装置。
背景技术
在软件的开发和应用过程中,为了能适配不同用户的应用需求,会不断增加软件的应用功能。随着软件的应用功能逐渐增加,软件项目所涉及的数据量也逐渐增加。为了能让参与项目的技术人员了解项目的内容,会将项目涉及的所有文件及其所在文件夹制作成文件夹目录结构,供技术人员通过文件夹目录结构查看项目的文件信息以了解项目进展。
目前常用的文件夹目录结构的构建方法是:先确定各个文件夹以及其包含的各个文件之间的父子关系或层级结构,利用文件夹与文件之间的父子关系或层级结构来构建生成整个项目的树形目录结构。
但目前常用的方法有如下技术问题:随着项目的拓展,项目所涉及的文件夹数量以及文件数量也随之增加,构建的树形目录结构,也更加复杂。当技术人员需要了解或核实结构内的某一个文件夹以及某一文件的内容时,则要从树形目录结构顶部开始,按照结构的层级关系逐一翻查,直到查找到相应的文件夹或文件并再打开查看,整个操作过程繁琐,耗时长,效率低。
发明内容
本发明提出一种包含文件信息的目录结构生成方法及装置,所述方法可以在抽取各个文件的层级结构时,读取文件夹内每个文件的信息,利用信息与层级结构生成对应的文件夹目录结构,用户不但可以浏览各个文件间的层级关系,也可以快速浏览目录内每个文件的内容,以简化查询流程,提高查询效率。
本发明实施例的第一方面提供了一种包含文件信息的目录结构生成方法,所述方法包括:
获取文件列表数据,所述文件列表数据包括若干个文件夹,每个文件夹包含若干个文件;
从所述文件列表数据分别提取关于文件夹和对应文件的路径关系的文件目录结构,以及关于每个文件描述内容的信息,得到多个描述信息,每个描述信息对应一个文件;
将所述多个描述信息分别添加至所述文件目录结构中,得到目录树结构。
在第一方面的一种可能的实现方式中,所述从所述文件列表数据分别提取关于文件夹和对应文件的路径关系的文件目录结构,以及关于每个文件描述内容的信息,得到多个描述信息,包括:
遍历所述文件列表数据的每个文件夹和每个文件的路径,得到文件目录结构;
读取所述文件列表数据内每个文件所包含的描述内容,得到多个描述信息。
在第一方面的一种可能的实现方式中,所述遍历所述文件列表数据的每个文件夹和每个文件的路径,得到文件目录结构,包括:
基于fn方法,遍历所述文件列表数据的每个数据节点,每个数据节点对应一个文件夹或文件;
当所述数据节点为文件,则清除所述数据节点对应路径的文件后缀名,得到文件路径;
当所述数据节点为文件夹,则确定文件夹是否包含index文件;
若文件夹包含index文件,则将index文件移出文件夹,并确定文件夹的路径,得到文件夹路径;
若文件夹不包含index文件,则清空文件夹的路径,得到文件夹路径;
利用tree方法,对所述文件夹路径和所述文件路径进行递归,生成文件目录结构。
在第一方面的一种可能的实现方式中,所述读取所述文件列表数据内每个文件所包含的描述内容,得到多个描述信息,包括:
遍历每个文件所包含的文件字段,得到多个文件字段;
并按照预设的字段符号,从每个所述文件字段提取对应的字段值,得到描述信息。
在第一方面的一种可能的实现方式中,在所述读取所述文件列表数据内每个文件的文件信息得到多个文件信息的步骤后,所述方法还包括:
读取所述文件列表数据内的异步数据,得到异步补充信息,所述异步数据为关于所述文件列表数据内未读取的文件的异步代码;
将所述异步补充信息添加至所述多个描述信息中。
在第一方面的一种可能的实现方式中,所述获取文件列表数据,包括:
获取文件夹的路径信息,对所述路径信息进行解析得到绝对路径信息;
采用readdirSync方法,查找在所述绝对路径信息所包含的若干个文件夹名称以及每个所述文件夹名称对应的多个文件名称;
采用所述若干个文件夹名称和所述多个文件名称拼接成文件列表数据。
在第一方面的一种可能的实现方式中,所述将所述多个描述信息分别添加至所述文件目录结构中,得到目录树结构,包括:
查找所述文件目录结构中所包含的文件路径,每个文件路径对应的一个描述信息;
按照所述文件路径,将每个所述描述信息分别添加至所述文件目录结构中,得到目录树结构。
本发明实施例的第二方面提供了一种包含文件信息的目录结构生成装置,所述装置包括:
获取模块,用于获取文件列表数据,所述文件列表数据包括若干个文件夹,每个文件夹包含若干个文件;
提取模块,用于从所述文件列表数据分别提取关于文件夹和对应文件的路径关系的文件目录结构,以及关于每个文件描述内容的信息,得到多个描述信息,每个描述信息对应一个文件;
生成模块,用于将所述多个描述信息分别添加至所述文件目录结构中,得到目录树结构。
相比于现有技术,本发明实施例提供的一种包含文件信息的目录结构生成方法及装置,其有益效果在于:本发明可以在抽取各个文件的层级结构时,读取文件夹内每个文件的描述信息,将各个文件的描述信息添加至文件的层级结构中生成文件的目录树结构,当用户查看时,不但可以通过层级结构了解各个文件之间的层级关系,也可以通过各个文件的描述信息流量文件内容,以简化查询流程,提高查询效率。
附图说明
图1是本发明一实施例提供的一种包含文件信息的目录结构生成方法的流程示意图;
图2是本发明一实施例提供的文件夹处理的操作流程图;
图3是本发明一实施例提供的文件信息提取的操作流程图;
图4是本发明一实施例提供的一种包含文件信息的目录结构生成装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在软件的开发和应用过程中,为了能适配不同用户的应用需求,会不断增加软件的应用功能。随着软件的应用功能逐渐增加,软件项目所涉及的数据量也逐渐增加。为了能让参与项目的技术人员了解项目的内容,会将项目涉及的所有文件及其所在文件夹制作成文件夹目录结构,供技术人员通过文件夹目录结构查看项目的文件信息以了解项目进展。
目前常用的文件夹目录结构的构建方法是:先确定各个文件夹以及其包含的各个文件之间的父子关系或层级结构,利用文件夹与文件之间的父子关系或层级结构来构建生成整个项目的树形目录结构。
但目前常用的方法有如下技术问题:随着项目的拓展,项目所涉及的文件夹数量以及文件数量也随之增加,构建的树形目录结构,也更加复杂。当技术人员需要了解或核实结构内的某一个文件夹以及某一文件的内容时,则要从树形目录结构顶部开始,按照结构的层级关系逐一翻查,直到查找到相应的文件夹或文件并再打开查看,整个操作过程繁琐,耗时长,效率低。
为了解决上述问题,下面将通过以下具体的实施例对本申请实施例提供的一种包含文件信息的目录结构生成方法进行详细介绍和说明。
在一实施例中,所述方法可以是用于智能终端,由终端进行数据处理以生成文件目录。
参照图1,示出了本发明一实施例提供的一种包含文件信息的目录结构生成方法的流程示意图。
其中,作为示例的,所述包含文件信息的目录结构生成方法,可以包括:
S11、获取文件列表数据,所述文件列表数据包括若干个文件夹,每个文件夹包含若干个文件。
在一实施例中,所述文件列表数据可以包括若干个文件夹的相关数据,每个文件夹可以包括至少一个文件。
其中,作为示例的,步骤S11可以包括以下子步骤:
S111、获取文件夹的路径信息,对所述路径信息进行解析得到绝对路径信息。
在一实施例中,用户可以将待整理的文件夹的相关数据输入至智能终端中,其中,路径信息可以是文件夹在智能终端或数据库的存储路径。
绝对路径信息是对路径信息进行解析得到的路径内容。
在具体实现中,可以使用node.js提供的path模块的resolve方法对路径信息中的序列进行解析,是路径信息解析为绝对路径,得到绝对路径信息。
S112、采用readdirSync方法,查找在所述绝对路径信息所包含的若干个文件夹名称以及每个所述文件夹名称对应的多个文件名称。
S113、采用所述若干个文件夹名称和所述多个文件名称拼接成文件列表数据。
在一实施例中,可以利用fs模块提供的readdirSync方法,找到当前绝对路径下的所有文件以及所在文件夹对应的名称,将各个名称组成临时文件列表数组,得到文件列表数据。
在一实施例中,可以创建list为文件列表数据,中文:临时文件列表数组,再创建两个新的数组:folders(中文:文件夹数组)、files(中文:文件数组),用于后续存放文件列表数据的对象信息。其中,对象信息中包含title(中文:文件名称)、path(中文:文件路径)和children(中文:子级目录结构)。
在一实施例中,可以通过两个数组分别存储文件夹和文件,采用此方式在存放子文件时,文件夹能排到首位,文件排到文件夹后面,符合平时编辑器打开时文件夹在文件前面的操作习惯。
而文件列表数据与文件夹数组和文件数组的关系是包含关系与被包含关系,因为文件夹数组和文件数组的推入(push)过程都是在为临时文件列表数组中进行的。
S12、从所述文件列表数据分别提取关于文件夹和对应文件的路径关系的文件目录结构,以及关于每个文件描述内容的信息,得到多个描述信息,每个描述信息对应一个文件。
在获取文件列表数据后,可以对文件类别数据进行遍历和读取,从而能从文件列表数据中分别提取得到文件目录结构和描述信息,其中,文件目录结构是关于文件夹和文件层级关系的树形结构。描述信息是关于文件存储内容的信息。
通过提取文件中所存储内容,可以将其内容添加至文件结构中,供用户查看。
在一可选的实施例中,步骤S12可以包括以下子步骤:
S121、遍历所述文件列表数据的每个文件夹和每个文件的路径,得到文件目录结构。
在一实施例中,可以获取每个文件夹的路径以及每个文件的路劲,通过各个路径之间的关系,构建得到文件目录结构,该文件目录结构可以是树形的目标结构。
在一实施例中,步骤S121可以包括以下子步骤:
S1211、基于fn方法,遍历所述文件列表数据的每个数据节点,每个数据节点对应一个文件夹或文件。
S1212、当所述数据节点为文件,则清除所述数据节点对应路径的文件后缀名,得到文件路径。
S1213、当所述数据节点为文件夹,则确定文件夹是否包含index文件。
S1214、若文件夹包含index文件,则将index文件移出文件夹,并确定文件夹的路径,得到文件夹路径。
S1215、若文件夹不包含index文件,则清空文件夹的路径,得到文件夹路径。
S1216、利用tree方法,对所述文件夹路径和所述文件路径进行递归,生成文件目录结构。
参照图2,示出了本发明一实施例提供的文件夹处理的操作流程图。
在一可选的操作方式中,可以先通过fn方法(具体可以是tree方法),遍历文件列表数据中的每个数据节点,其中,数据节点可以对应一个文件夹或一个文件。确定当前的数据节点是文件夹还是文件,若当前的数据节点为文件,则清除该数据节点对应路径的文件后缀名,得到文件路径。若数据节点为文件夹,则判断文件夹所包含的子文件中是否包含index文件。当文件夹包含index文件,则将index文件移出文件夹,在确定文件夹的路径,得到文件夹路径;若文件夹不包含index文件,则直接清空文件夹的路径,得到文件夹路径。最后利用tree方法,对文件夹路径和文件路径进行递归,生成文件目录结构。
S122、读取所述文件列表数据内每个文件所包含的描述内容,得到多个描述信息。
在一实施例中,在构建目录结构时,可以读取每个文件的内容,再从读取的文件内容中该文件的相关描述内容,进而得到每个文件的描述信息。通过这些描述信息可以确定该文件的主要内容,以方便用户后续的查看使用。
在一实施例中,步骤S122可以包括以下子步骤:
S1221、遍历每个文件所包含的文件字段,得到多个文件字段。
S1222、并按照预设的字段符号,从每个所述文件字段提取对应的字段值,得到描述信息。
具体地,在确定数据节点是文件后,可以新建一个promise(代码),读取这个文件的内容,如果内容中读取到/*@@*/字符的内容,则将/*@@*/中间的内容提取出来作为文件的描述信息,一并写入文件信息,将obj推入到files数组中,从而可以将描述信息(临时对象存放的信息也一并写入文件信息中)写入sidebars(文件目录结构树)中。
需要说明的是,obj是在判定数据节点是文件或文件夹后创建的一个临时对象,用于存放文件列表数据所需的信息(title、path、children)。
在具体实现中,可以通过stat提供的isDirectory方法(如果<fs.Stats>对象描述文件系统目录,也就是文件夹,则返回true,详情参考http://nodejs.cn/api/fs/stats_isdirectory.html)可以判断出数据节点stat是文件还是文件夹,此处判断的是stat,临时文件对象不参与判断。(,如果是文件则将文件信息(临时对象存放的信息也一并写入文件信息中)写入sidebars中,新建一个promise,读取这个文件的内容,如果内容中读取到/*@@*/则将中间的内容提取出来作为文件的描述信息,一并写入文件信息,将obj推入到files数组中。如果是文件夹则不仅要写入文件信息(临时对象存放的信息也一并写入文件信息中),还要继续调用tree方法进行递归,传入路径改为现在这个文件夹的路径,将obj推入到folders数组中。
在使用tree方法完成递归后,sidebar数组形成树形结构的文件目录结构也已经构建完成,但是执行tree方法期间也有一部分异步代码(promise),也就是读取文件内容的操作是尚未完成的。为了读取所有文件的内容,其中,作为示例的,在步骤S12后,所述方法还可以包括:
S21、读取所述文件列表数据内的异步数据,得到异步补充信息,所述异步数据为关于所述文件列表数据内未读取的文件的异步代码。
S22、将所述异步补充信息添加至所述多个描述信息中。
在一实施例中,可以将每个文件对应的异步补充信息添加至其对应的描述信息中,从而能在后续将描述信息添加至目录结构中。
具体地,可以执行promise.all来确保所有的文件都已经读取完毕再往下执行代码。由于在文件目录结构的构建过程中,文件目录结构已经存在,但是数据不完整,只有对文件的所有内容读取完毕后,并将补充的信息添加至描述信息中,再将文件信息对文件目录结构进行补充,才算是完整的目录树结构,从而能避免信息遗漏的情况。
参照图3,示出了本发明一实施例提供的文件信息提取的操作流程图。
在一实际操作的方式中,提取路径和读取信息的操作步骤如下:
第一,先执行generateDirectoryList方法,构建xt_directoryList的树结构,该树结构用于在生成xt_directoryList.md文件(markdown类型文件),以缩进的风格直观的看出文件与文件夹的关系。
分别进行以下定义:
①定义indent,用于保存当前树节点缩进的空格数量。
②定义space,通过padStart方法创建出同等长度的空字符串,用于占位。
③将space(空格占位字符串),当前树节点的名称(title),当前节点的描述(desc)和换行符\n形成一个字符串,加入到markdownText中。
第二,以markdownText为文件内容,输出树结构(生成xt_directoryList.md文件)。
第三,调用generateSidebarJson方法,生成sidebar的json文件。
第四,定义tempSidebar变量,深克隆sidebar,深克隆是为了断掉与sidebars的引用关系,避免因为tempSidebar的改变而影响到sidebars里面的内容。
第五,定义一个fn方法,用于递归遍历sidebar数组,此次sidebar是文件列表数组。
第六,执行fn方法,如果当前节点是文件夹,则先对文件夹的children进行查找,检测里面是否有index文件,如果有,则把该文件移出文件夹。如果没有则清空当前文件夹的path。执行完判断是否有index文件后,对文件夹的children进行forEach遍历,执行fn方法,实现递归。如果当前节点是文件,则把当前节点的path的文件后缀名去掉。到此整个fn方法执行完毕,这里执行fn方法的意义在于vuepress对sidebar的处理机制,对于有path路径的,只要当前路径下存在index.md或者README.md都会默认选中该文件,如果sidebar中不去掉index文件的话,会导致该文件夹路径下的内容都显示不出来。
S13、将所述多个描述信息分别添加至所述文件目录结构中,得到目录树结构。
在分别获取目录结构和文件的描述信息后,可以将描述信息添加至目录结构中,使得目录结构包含文字的描述内容。待用户查看时,既可以看到项目中所包含各个文件、文件间的关系,也可以查看每个文件的内容,方便用户使用。
在其中一种的实施例中,步骤S13可以包括以下子步骤:
S131、查找所述文件目录结构中所包含的文件路径,每个文件路径对应的一个描述信息。
S132、按照所述文件路径,将每个所述描述信息分别添加至所述文件目录结构中,得到目录树结构。
具体地,等待forEach遍历结束后,通过当前tree方法传进来的文件路径(对象的key)找到存放的描述信息(parent),parent的children里面存放解构出来的folders和files的数组,再按照每个文件路径,将对应的每个描述信息分别添加至文件目录结构(具体可以添加至文件目录结构的文件的开头处),生成目录树结构。
在本实施例中,本发明实施例提供了一种包含文件信息的目录结构生成方法,其有益效果在于:本发明可以在抽取各个文件的层级结构时,读取文件夹内每个文件的描述信息,将各个文件的描述信息添加至文件的层级结构中生成文件的目录树结构,当用户查看时,不但可以通过层级结构了解各个文件之间的层级关系,也可以通过各个文件的描述信息流量文件内容,以简化查询流程,提高查询效率。
本发明实施例还提供了一种包含文件信息的目录结构生成装置,参见图4,示出了本发明一实施例提供的一种包含文件信息的目录结构生成装置的结构示意图。
其中,作为示例的,所述包含文件信息的目录结构生成装置可以包括:
获取模块401,用于获取文件列表数据,所述文件列表数据包括若干个文件夹,每个文件夹包含若干个文件;
提取模块402,用于从所述文件列表数据分别提取关于文件夹和对应文件的路径关系的文件目录结构,以及关于每个文件描述内容的信息,得到多个描述信息,每个描述信息对应一个文件;
生成模块403,用于将所述多个描述信息分别添加至所述文件目录结构中,得到目录树结构。
可选地,所述提取模块,还用于:
遍历所述文件列表数据的每个文件夹和每个文件的路径,得到文件目录结构;
读取所述文件列表数据内每个文件所包含的描述内容,得到多个描述信息。
可选地,所述提取模块,还用于:
基于fn方法,遍历所述文件列表数据的每个数据节点,每个数据节点对应一个文件夹或文件;
当所述数据节点为文件,则清除所述数据节点对应路径的文件后缀名,得到文件路径;
当所述数据节点为文件夹,则确定文件夹是否包含index文件;
若文件夹包含index文件,则将index文件移出文件夹,并确定文件夹的路径,得到文件夹路径;
若文件夹不包含index文件,则清空文件夹的路径,得到文件夹路径;
利用tree方法,对所述文件夹路径和所述文件路径进行递归,生成文件目录结构。
可选地,所述提取模块,还用于:
遍历每个文件所包含的文件字段,得到多个文件字段;
并按照预设的字段符号,从每个所述文件字段提取对应的字段值,得到描述信息。
可选地,所述装置还包括:
读取异步数据模块,用于读取所述文件列表数据内的异步数据,得到异步补充信息,所述异步数据为关于所述文件列表数据内未读取的文件的异步代码;
异步信息添加模块,用于将所述异步补充信息添加至所述多个描述信息中。
可选地,所述获取模块,还用于:
获取文件夹的路径信息,对所述路径信息进行解析得到绝对路径信息;
采用readdirSync方法,查找在所述绝对路径信息所包含的若干个文件夹名称以及每个所述文件夹名称对应的多个文件名称;
采用所述若干个文件夹名称和所述多个文件名称拼接成文件列表数据。
可选地,所述生成模块还用于:
查找所述文件目录结构中所包含的文件路径,每个文件路径对应的一个描述信息;
按照所述文件路径,将每个所述描述信息分别添加至所述文件目录结构中,得到目录树结构。
所属技术领域的技术人员可以清楚地了解到,为方便的描述和简洁,上述描述的装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
进一步的,本申请实施例还提供了一种电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述实施例所述的包含文件信息的目录结构生成方法。
进一步的,本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行程序,所述计算机可执行程序用于使计算机执行如上述实施例所述的包含文件信息的目录结构生成方法。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。

Claims (10)

1.一种包含文件信息的目录结构生成方法,其特征在于,所述方法包括:
获取文件列表数据,所述文件列表数据包括若干个文件夹,每个文件夹包含若干个文件;
从所述文件列表数据分别提取关于文件夹和对应文件的路径关系的文件目录结构,以及关于每个文件描述内容的信息,得到多个描述信息,每个描述信息对应一个文件;
将所述多个描述信息分别添加至所述文件目录结构中,得到目录树结构。
2.根据权利要求1所述的包含文件信息的目录结构生成方法,其特征在于,所述从所述文件列表数据分别提取关于文件夹和对应文件的路径关系的文件目录结构,以及关于每个文件描述内容的信息,得到多个描述信息,包括:
遍历所述文件列表数据的每个文件夹和每个文件的路径,得到文件目录结构;
读取所述文件列表数据内每个文件所包含的描述内容,得到多个描述信息。
3.根据权利要求2所述的包含文件信息的目录结构生成方法,其特征在于,所述遍历所述文件列表数据的每个文件夹和每个文件的路径,得到文件目录结构,包括:
基于fn方法,遍历所述文件列表数据的每个数据节点,每个数据节点对应一个文件夹或文件;
当所述数据节点为文件,则清除所述数据节点对应路径的文件后缀名,得到文件路径;
当所述数据节点为文件夹,则确定文件夹是否包含index文件;
若文件夹包含index文件,则将index文件移出文件夹,并确定文件夹的路径,得到文件夹路径;
若文件夹不包含index文件,则清空文件夹的路径,得到文件夹路径;
利用tree方法,对所述文件夹路径和所述文件路径进行递归,生成文件目录结构。
4.根据权利要求2所述的包含文件信息的目录结构生成方法,其特征在于,所述读取所述文件列表数据内每个文件所包含的描述内容,得到多个描述信息,包括:
遍历每个文件所包含的文件字段,得到多个文件字段;
并按照预设的字段符号,从每个所述文件字段提取对应的字段值,得到描述信息。
5.根据权利要求1所述的包含文件信息的目录结构生成方法,其特征在于,在所述读取所述文件列表数据内每个文件的文件信息得到多个文件信息的步骤后,所述方法还包括:
读取所述文件列表数据内的异步数据,得到异步补充信息,所述异步数据为关于所述文件列表数据内未读取的文件的异步代码;
将所述异步补充信息添加至所述多个描述信息中。
6.根据权利要求1所述的包含文件信息的目录结构生成方法,其特征在于,所述获取文件列表数据,包括:
获取文件夹的路径信息,对所述路径信息进行解析得到绝对路径信息;
采用readdirSync方法,查找在所述绝对路径信息所包含的若干个文件夹名称以及每个所述文件夹名称对应的多个文件名称;
采用所述若干个文件夹名称和所述多个文件名称拼接成文件列表数据。
7.根据权利要求1所述的包含文件信息的目录结构生成方法,其特征在于,所述将所述多个描述信息分别添加至所述文件目录结构中,得到目录树结构,包括:
查找所述文件目录结构中所包含的文件路径,每个文件路径对应的一个描述信息;
按照所述文件路径,将每个所述描述信息分别添加至所述文件目录结构中,得到目录树结构。
8.一种包含文件信息的目录结构生成装置,其特征在于,所述装置包括:
获取模块,用于获取文件列表数据,所述文件列表数据包括若干个文件夹,每个文件夹包含若干个文件;
提取模块,用于从所述文件列表数据分别提取关于文件夹和对应文件的路径关系的文件目录结构,以及关于每个文件描述内容的信息,得到多个描述信息,每个描述信息对应一个文件;
生成模块,用于将所述多个描述信息分别添加至所述文件目录结构中,得到目录树结构。
9.一种电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1-7任意一项所述的包含文件信息的目录结构生成方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机可执行程序,所述计算机可执行程序用于使计算机执行如权利要求1-7任意一项所述的包含文件信息的目录结构生成方法。
CN202210973214.1A 2022-08-15 2022-08-15 一种包含文件信息的目录结构生成方法及装置 Active CN115391289B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210973214.1A CN115391289B (zh) 2022-08-15 2022-08-15 一种包含文件信息的目录结构生成方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210973214.1A CN115391289B (zh) 2022-08-15 2022-08-15 一种包含文件信息的目录结构生成方法及装置

Publications (2)

Publication Number Publication Date
CN115391289A true CN115391289A (zh) 2022-11-25
CN115391289B CN115391289B (zh) 2023-08-11

Family

ID=84118015

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210973214.1A Active CN115391289B (zh) 2022-08-15 2022-08-15 一种包含文件信息的目录结构生成方法及装置

Country Status (1)

Country Link
CN (1) CN115391289B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101473305A (zh) * 2006-04-28 2009-07-01 网络装置公司 用于集群环境中的作业的管理的系统和方法
CN101876992A (zh) * 2009-11-17 2010-11-03 中国科学院自动化研究所 一种图像数据仓库管理方法
CN102656557A (zh) * 2009-10-14 2012-09-05 韦尔迈格服务有限公司 自动化企业软件开发
CN112527738A (zh) * 2020-12-25 2021-03-19 平安普惠企业管理有限公司 项目描述文件优化方法、系统及存储介质
CN114265818A (zh) * 2021-12-27 2022-04-01 完美世界(北京)软件科技发展有限公司 文件上传方法、装置、设备及计算机可读介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101473305A (zh) * 2006-04-28 2009-07-01 网络装置公司 用于集群环境中的作业的管理的系统和方法
CN102656557A (zh) * 2009-10-14 2012-09-05 韦尔迈格服务有限公司 自动化企业软件开发
CN101876992A (zh) * 2009-11-17 2010-11-03 中国科学院自动化研究所 一种图像数据仓库管理方法
CN112527738A (zh) * 2020-12-25 2021-03-19 平安普惠企业管理有限公司 项目描述文件优化方法、系统及存储介质
CN114265818A (zh) * 2021-12-27 2022-04-01 完美世界(北京)软件科技发展有限公司 文件上传方法、装置、设备及计算机可读介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
青雨巷陌: ""Node.js生成制定目录的目录文件树", pages 1 - 2 *

Also Published As

Publication number Publication date
CN115391289B (zh) 2023-08-11

Similar Documents

Publication Publication Date Title
US7287215B2 (en) System and method for facilitating the design of a website
CN101582075B (zh) Web信息抽取系统
Thorup Near-optimal fully-dynamic graph connectivity
Farach-Colton et al. On the sorting-complexity of suffix tree construction
US6606625B1 (en) Wrapper induction by hierarchical data analysis
US6775674B1 (en) Auto completion of relationships between objects in a data model
US8190591B2 (en) Bit string searching apparatus, searching method, and program
CN104965901A (zh) 一种目标页面内容抓取方法和装置
CN110515896B (zh) 模型资源管理方法、模型文件制作方法、装置和系统
CN109815238B (zh) 用严格平衡二叉树实现数据库的动态添加方法及装置
WO2008053583A1 (fr) Procédé et programme de recherche de séquence de bits
CN109522271B (zh) 一种b+树节点的批量插入和删除方法及装置
CN106708565A (zh) 一种清除apk中无用图片资源的方法及装置
CN110442584B (zh) 一种基于异步加载的树形结构资源检索的方法
CN111881316A (zh) 搜索方法、装置及服务器和计算机可读存储介质
EP1644849A1 (en) System and method for generating sql using templates
CN113177168A (zh) 一种基于Web元素属性特征的定位方法
CN101488152B (zh) 一种浏览器中搜索设置项的方法、浏览器及系统
KR19990070968A (ko) 인터넷 자료 검색 및 데이터베이스화 방법
CN115391289A (zh) 一种包含文件信息的目录结构生成方法及装置
CN100362514C (zh) 一种构造和浏览语义链的方法
CN113127861A (zh) 一种规则命中检测方法、装置、电子设备及可读存储介质
JP4134824B2 (ja) 情報処理装置及びプログラム
CN109284393A (zh) 一种针对家谱人物属性名称的融合方法
Kramer et al. AutoCAD VBA Programming

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant