一种文件的管理方法和装置的制造方法

文档序号:10655231阅读:329来源:国知局
一种文件的管理方法和装置的制造方法
【专利摘要】本发明公开了一种文件的管理方法和装置,用于对文件的查询检索进行快速的优化,免去使用者自行建立关键词的麻烦。本发明提供一种文件的管理方法,包括:从服务器的临时文件夹中获取待处理的文件,并获取所述待处理的文件对应的文件格式;根据获取到的所述文件格式选择相应的文本读取器;使用所述文本读取器将所述待处理的文件读取成文件流,并从所述文件流中抽取出文本内容;将所述文本内容添加到lucene索引中或者数据库字段中,以便于用户通过所述lucene索引检索lucene搜索引擎,或通过所述数据库字段检索数据库搜索引擎。
【专利说明】
一种文件的管理方法和装置
技术领域
[0001]本发明涉及文件管理技术领域,具体涉及一种文件的管理方法和装置。
【背景技术】
[0002]随着信息化的发展,许多公司或者政府部门经过长时间的办公,常年累积了大量的文件,为了避免对光学字符识别(Optical Character Recognit1n,OCR)硬件的依赖,减轻文件内容查询的繁琐,需要在文件整理阶段就对文件内容识别。
[0003]为了解决大量文件堆积,文件存放杂乱无章,常年累月文件大幅增加造成的文件管理混乱,使用户能够快速搜寻出自己想要的文件,需要一套行之有效的文件管理系统,有鉴于此,便有厂商提出根据使用者自行建立的关键词来对文件进行分类的技术,用以提供使用者根据关键词来进行分类或者检索具有关联性的相关文件,不过这种方法由于其关键词需要使用者自行判断及建立,不但会造成使用者判断的困扰,且建立关键词的过程亦非常复杂。
[0004]综上所述,可知现有技术中长期以来一直存在文件分类及检索不便的问题,因此有必要提出改进的技术手段,来解决此一问题。

【发明内容】

[0005]本发明的目的在于提供一种文件的管理方法和装置,用于对文件的查询检索进行快速的优化,免去使用者自行建立关键词的麻烦。
[0006]为了达到上述目的,本发明采用这样的如下技术方案:
[0007]—方面,本发明提供一种文件的管理方法,包括:
[0008]从服务器的临时文件夹中获取待处理的文件,并获取所述待处理的文件对应的文件格式;
[0009]根据获取到的所述文件格式选择相应的文本读取器;
[0010]使用所述文本读取器将所述待处理的文件读取成文件流,并从所述文件流中抽取出文本内容;
[0011]将所述文本内容添加到Iucene索引中或者数据库字段中,以便于用户通过所述Iucene索引检索Iucene搜索引擎,或通过所述数据库字段检索数据库搜索引擎。
[0012]另一方面,本发明提供一种文件的管理装置,包括:
[0013]格式获取模块,用于从服务器的临时文件夹中获取待处理的文件,并获取所述待处理的文件对应的文件格式;
[0014]读取器选择模块,用于根据获取到的所述文件格式选择相应的文本读取器;
[0015]内容抽取模块,用于使用所述文本读取器将所述待处理的文件读取成文件流,并从所述文件流中抽取出文本内容;
[0016]内容保存模块,用于将所述文本内容添加到Iucene索引中或者数据库字段中,以便于用户通过所述Iucene索引检索Iucene搜索引擎,或通过所述数据库字段检索数据库搜索引擎。
[0017]采用上述技术方案后,本发明提供的技术方案将有如下优点:
[0018]本发明实施例中服务器的临时文件夹中存放有文件,当临时文件夹中还存在待处理的文件时,获取待处理的文件对应的文件格式,本发明实施例中对于不同的文件格式可以选择相应的文本读取器,使用该文本读取器将待处理的文件读取成文件流,并从文件流中抽取出文本内容,因此本发明实施例中通过对文本格式的判断选择具体的文本读取器,从文件流中自动提取出文本内容,这些文本内容添加到Iucene索引中或者数据库字段中,用户通过Iucene索引检索Iucene搜索引擎,或通过数据库字段检索数据库搜索引擎。因此本发明实施例中,对于未处理的文件不能直接放入服务器,而是通过服务器的临时文件夹进行中转,通过文本读取器自动抽取文件内容,免去使用者自行建立关键词的麻烦。因此可以对文件的查询检索进行快速的优化。支持文件内容数据的转换和提取,具备较为完善、较高性能的文本功能。
【附图说明】
[0019]图1为本发明实施例提供一种文件的管理方法的流程方框示意图;
[0020]图2为本发明实施例提供的文件的管理方法的工作流程示意图;
[0021]图3-a为本发明实施例提供的一种文件的管理装置的组成结构示意图;
[0022]图3-b为本发明实施例提供的一种格式获取模块的组成结构示意图。
【具体实施方式】
[0023]本发明实施例提供了一种文件的管理方法和装置,用于对文件的查询检索进行快速的优化,免去使用者自行建立关键词的麻烦。
[0024]为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而非全部实施例。基于本发明中的实施例,本领域的技术人员所获得的所有其他实施例,都属于本发明保护的范围。
[0025]本发明的说明书和权利要求书及上述附图中的术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,以便包含一系列单元的过程、方法、系统、产品或设备不必限于那些单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它单元。
[0026]以下分别进行详细说明。本发明实施例能够快速检索文件内容,以实现文件数据的共享和检索,减少搜索文件的工作量,提高工作效率。本发明文件的管理方法的一个实施例,可应用于对文件的自动管理中,请参阅图1所示,本发明提供的文件的管理方法,可以包括如下步骤:
[0027]101、从服务器的临时文件夹中获取待处理的文件,并获取待处理的文件对应的文件格式。
[0028]在本发明实施例中,服务器用于保存文件,文件在服务器的文件夹中保存,文件具有唯一的存储路径,使用者可以将文件先存入服务器的临时文件夹中,等待按照本发明实施例提供的方法进行后续处理,使用者获取到的文件可以是从数据库中提取出的文件,也可以是使用者手动输入的文件,还可以是从文件系统中提取出的文件,还可以是从网络上抓取到的文件,具体实现方式此处不做限定。例如使用者可以将已上传的文件或者正在上传的文件放入到服务器的临时文件夹中,服务器的临时文件夹中保存了所有的待处理的文件,本发明实施例中可以按照预置的周期扫描临时文件夹,从而自动获取到待处理的文件。
[0029]在本发明的一些实施例中,步骤101中的获取待处理的文件对应的文件格式,可以包括如下步骤:
[0030]Al、解析待处理的文件的属性信息;
[0031]A2、根据属性信息确定待处理的文件对应的文件格式为如下格式中的一种:xls、xlsx、doc、docx、pdf、txt、ppt、pptx0
[0032]其中,从临时文件夹获取到待处理的文件之后,可以采用多种方式来获取文件对应的文件格式,例如步骤Al中通过对文件的属性信息进行解析,从而通过文件的属性来确定文件格式,在实际应用中,不同格式的文件具有不同的属性。另外还可以从文件的名称中来分析文件格式,例如在文件的名称中可以通过后缀名来获取到文件格式。具体的,文件格式为如下格式中的一种^18、1181、(10(3、(10014(1;1^411:4口1:4口七1,需要说明的是,上述格式只是常用文件的格式可能存在的格式,但不限定的是,本发明实施例中待处理的文件对应的文件格式也可以是除xls、xlsx、doc、docx、pdf、txt、ppt、pptx以外的其它格式,例如vis1格式等,具体可以结合应用场景来确定。
[0033]102、根据获取到的文件格式选择相应的文本读取器。
[0034]在本发明实施例中,对于临时文件夹中保存的待处理的文件,在获取到文件格式后,可以根据文件格式选择具体的文本读取器,若从临时文件夹中获取到了多个待处理的文件,则可以针对所有的待处理的文件分别选择相应的文本读取器。其中,文本读取器可以是专用的文本读取工具,也可以是设置在本发明实施例提供的文件的管理装置中的文本读取模块,文本读取器可以根据具体的文件格式来选择,文件读取器在读取不同文件格式的文件时可以有具体的实现方式,接下来进行详细举例说明。
[0035]在本发明的一些实施例中,步骤102根据获取到的文件格式选择相应的文本读取器,可以包括如下步骤:
[0036]B1、当待处理的文件对应的文件格式为xls格式时,选择HSSFWorkbook模块作为文本读取器;
[0037]B2、当待处理的文件对应的文件格式为xlsx格式时,选择XSSFWorkbook模块作为文本读取器;
[0038]B3、当待处理的文件对应的文件格式为doc格式时,选择HffProocument模块作为文本读取器;
[0039]B4、当待处理的文件对应的文件格式为docx格式时,选择XWPFDocument模块作为文本读取器;
[0040]B5、当待处理的文件对应的文件格式为pdf格式时,选择PDFParser模块作为文本读取器;
[0041 ] B6、当待处理的文件对应的文件格式为txt格式时,选择Fi IeReader模块作为文本读取器;
[0042]B7、当待处理的文件对应的文件格式为ppt格式时,选择HSLFSlideShow模块作为文本读取器;
[0043]B8、当待处理的文件对应的文件格式为pptx格式时,选择XSLFSl ideShow模块作为文本读取器。
[0044]其中,步骤BI至步骤B8中的所有步骤以及其中的一个或几个步骤可以根据具体的实现场景来灵活选择执行哪一个或几个步骤,具体实现不做限定。另外对于不同的文件格式,在选择具体的操作系统以及应用程序解决时也可以有不同的具体实现,此处只是可实现的几种方式的举例说明,但本发明实施例可以并不局限于此。本发明实施例中文本读取器可以根据文件格式的不同来灵活选择,例如HSSFWorkbook模块、XSSFWorkbook模块、HffPFDocument 模块、XWPFDocument 模块、PDFPar ser 模块、Fi IeReader 模块、HSLFSl ideShow模块、XSLFSl ideShow模块。其中,对于文件格式为常用的不同格式,上述模块只是通过PO1、pdfbox、java 1来灵活实现的具体例子,还可以结合需要解析的文件格式选择其他类型的文本解析器。
[0045]103、使用文本读取器将待处理的文件读取成文件流,并从文件流中抽取出文本内容。
[0046]在本发明实施例中,通过前述步骤102选择出文件格式对应的文本读取器之后,使用该文本读取器可以将待处理的文件读取为文件流(英文名称:File Stream),然后通过对文件流的抽取,可以从文件流中抽取出文本内容。文件内容是文件流中的文本数据,文本内容承载了待处理的文件中的内容信息,通过从文件流中抽取出文件内容,可以实现对待处理的文件进行自动的内容描述,因此该文本内容可以作为待处理的文件的关键字,本发明实施例中文本内容是自动生成,不需要使用者输入。
[0047]在本发明的一些实施例中,步骤103使用文本读取器将待处理的文件读取成文件流,并从文件流中抽取出文本内容,包括:
[0048]Cl、当待处理的文件对应的文件格式为xls格式时,使用HSSFWorkbook模块从xls文件中创建出xls文件流,并从xls文件流中使用HSSFExce IExtractor模块抽取出xls文本内容;
[0049]C2、当待处理的文件对应的文件格式为xl sx格式时,使用XSSFWorkbook模块从xlsx文件中创建出xlsx文件流,并从xlsx文件流中使用XSSFExce IExtrac tor模块抽取出xlsx文本内容;
[0050]C3、当待处理的文件对应的文件格式为doc格式时,使用HWProocument模块从doc文件中创建出doc文件流,并从doc文件流中使用HWPFWordExtractor模块抽取出doc文本内容;
[0051 ] C4、当待处理的文件对应的文件格式为docx格式时,使用XWPFDocument模块从docx文件中创建出docx文件流,并从docx文件流中使用XWPFWordExtrac tor模块抽取出docx文本内容;
[0052]C5、当待处理的文件对应的文件格式为pdf格式时,使用PDFParser模块从pdf文件中创建出pdf文件流,并从pdf文件流中使用F1DFTextStripper模块抽取出pdf文本内容;[°°53] C6、当待处理的文件对应的文件格式为txt格式时,使用FileWriter模块从txt文件中创建出txt文件流,并从txt文件流中使用Fi IeWriter模块抽取出txt文本内容;
[0054]C7、当待处理的文件对应的文件格式为ppt格式时,使用HSLFSlideShow模块从ppt文件中创建出ppt文件流,并从ppt文件流中使用HSLF PowerPointExtractor模块抽取出PPt文本内容;
[0055]C8、当待处理的文件对应的文件格式为pptx格式时,使用XSLFSlideShow模块从pptx文件中创建出pptx文件流,并从pptx文件流中使用XSLFPowerPointExtractor模块抽取出pptx文本内容。
[0056]其中,在前述执行步骤BI至步骤B8的情况下,可以执行步骤Cl至步骤CS中的所有步骤以及其中的一个或几个步骤可以根据具体的实现场景来灵活选择执行哪一个或几个步骤,具体实现不做限定。另外对于不同的文件格式,在选择具体的操作系统以及应用程序解决时也可以有不同的具体实现,此处只是可实现的几种方式的举例说明,但本发明实施例可以并不局限于此。
[0057]为便于更好的理解和实施本发明实施例的上述方案,下面举例相应的应用场景来进行具体说明。请参阅图2所示,图2为本发明实施例提供的文件的管理方法的工作流程示意图,接下来分别对在不同文件格式的场景下文本内容的抽取进行举例说明,例如分别Excel文件、Word文件、Pdf文件、PPT文件、Txt文件的文本内容抽取为例。
[0058]在上述步骤Cl和的实现场景下以及在上述步骤C2的实现场景下,先将待处理的文件读取成文件流,例如可以用Sy stem.10命名空间中的StreamWri ter和StreamReader类读写文件的内容。利用POI的HSSFWorkbook方法创建xls文件对象,再用POI的Exce IExtractor方法对xls进行解析得出文本内容;利用POI的XSSFWorkbook方法创建xlsx文件对象,再利用POI的XSSFExcelExtractor方法对xlsx进行解析。其中,Apache POI是开放源码函式库,POI提供API给Java程序对Microsoft Off ice格式档案读和写的功能。例如,HSSF提供读写Microsoft Excel格式档案的功能。XSSF提供读写Microsoft Excel 00XML格式档案的功能。HWPF提供读写Microsoft Word格式档案的功能。HSLF提供读写Microsoft PowerPoint格式档案的功能。HDGF提供读写Microsoft Vis1格式档案的功能。
[0059]举例说明如下,首先以XI s的解析进行举例说明,可以采用org.apache.po1.hssf.extractor.ExceIExtractor这个类处理excel 2003(.xls)0(l)同doc,通过ExtractorFactory创建,(2)新建ExcelExtractor对象。也可以采用如下方式:I)同D0C,通过接收POIFSFileSystem来创建对象,2)通过接收HSSFWorkbook来创建对象,其中,HSSFWorkbook对象可以通过接收POIFSFiIeSystem或者InputStream对象来创建。样例代码可以如下:
[0060]InputStream inp = new FilelnputStream(this.filePath);
[0061]HSSFWorkbook wb = new HSSFWorkbook(new P0IFSFileSystem(inp));
[0062]extractor = new ExcelExtractor(wb);
[0063]//filter formulas from the results
[0064]this.extractor.setFormulasNotResults(true);
[0065]//filter Sheet name from the results
[0066]this.extractor.setIncIudeSheetNames(false);
[0067]content = this.extractor.getText();
[0068]接下来,以xlsx的解析进行举例说明文件流的解析步骤。可以采用org.apache.po1.POITextExtractor和org.apache.po1.POIXMLTextExtractor,直接新建XSSFExce IExtractor对象,或者通过接收XSSFWorkbook对象来创建D XSSFWorkbook可以接收 inputStream 对象
[0069]在上述步骤C3的实现场景下和在上述步骤C4的实现场景下,利用POI的WordExtractor方法对doc文件进行解析;利用POI的XWPFDocument方法创建文档对象,再利用XWPFWordEx tract or方法对docx 进行解析。其中,WordExtrac tor 是 Apache PO I 针对word2003开发的解析方法,XWPFWord Extractor是Apache POI针对word2007开发的解析新增方法。具体的,d ο c的解析步骤如下,采用org.apache.po1.hwpf.extractor.WordExtractor这个类能处理word 2003文档(.doc)。例如可以采用如下两种方式:
[0070](I)使用ExtractorFactory.createExtractor( InputStream)创建抽取对象,返回的是公共接口对象,因此强制转换,InputStream f is = new FiIeInputStream(fiIePath);WorderExtractor extractor=(WordExtractor)ExtractorFactory.create Extractor(fis) ; (2)使用WordExtractor创建抽取对象,或者接收InputStream来创建对象,或者接收POIFSFi IeSystem来创建对象,或者POIFSFi IeSystem也接收InputStream来接收对象D以接收HW PFDocument来仓1J建对象例如,HW PFDocument通过接收InputStream或者POIFSFi IeSystem 来创建对象 D
[0071]接下来,以docx的解析进行举例说明文件流的解析步骤。可以采用如下org.apache.po1.POITextExtractor^org.apache.po1.POIXMLTextExtractor、org.apache, po1.xwpf.extractor.XWPFWordExtractor 类能处理 word2007 (.docx) D 举例说明,(I)该类对象的父类可以使用ExtratorFactory生成,但需要接收的参数是个virtual对象OPCPackage,该对象不好确定。因此直接使用如下(2)中的方法创建对象。(2)新建XWPFWordExtractor对象,通过接收XWPF Document对象来创建,也可以通过XWPFDocument可以接收input Stream对象D
[0072]在上述步骤C5的实现场景下,利用pdf box的PDFParser方法创建pdf文档对象,再利用pdfbox的PDFTextStripper方法提取文本信息D其中,PDF解析可以通过pdfbox中的代码来实现,不再详细举例说明。
[0073]在上述步骤C6的实现场景下,利用java.1o的FileReader方法对txt文档对象进行文本信息提取。其中,tx讀军析以通过java.1o中的代码来实现,不再详细举例说明。
[0074]在上述步骤C7的实现场景下和在上述步骤CS的实现场景下,利用POI的PowerPointExtractor 对ppt 文件进行文本解析;利用POI 的XSLFPowerPointExtractor 对P P t X文件进行文本解析。其中,P P T解析步骤如下,采用如下org.apache.po1.hslf.extractor.PowerPointExtractor这个类来创建PowerPoint2003o例如,(I)同D0C,用ExtractorFactory创建对象,(2)直接使用PowerPointExtractor创建对象,通过接收HSLFSlideShow对象、POIFSFi IeSystem对象或文件名即可创建D
[0075]接下来,以pptx的解析进行举例说明文件流的解析步骤。可以采用如下org.apache.po1.POITextExtractor和org.apache.po1.POIXMLTextExtractor这个类會^处理 PowerPoint 200 7 (.pptx),直接创建 XSLFPowerPo in tEx tract or 对象,例如,(I)接收XMLSIideShow对象,通过接收InputStream来创建XMLSIideShow对象 D (2)接收XSLFSlideShow对象,通过接收文件路径即可创建XSLFSlideShow对象。
[0076]104、将文本内容添加到Iucene索引中或者数据库字段中,以便于用户通过lucene索引检索Iucene搜索引擎,或通过数据库字段检索数据库搜索引擎。
[0077]在本发明实施例中,通过步骤103获取到待处理的文件对应的文件内容之后,可以将文本内容添加到lucene索引中或者数据库字段中,用户通过Iucene索引检索lucene搜索引擎,或通过数据库字段检索数据库搜索引擎。本发明实施例利用文件文本分析架构去生成lucene检索文件或数据库字段内容,以实现文件数据的共享和检索,减少搜索文件的工作量,提高工作效率。在本发明实施例中,上述文件检索方式分为两种类型= Iucene搜索和数据库搜索。lucene搜索主要利用它的索引引擎来创建内容索引。其中,lucene搜索提供的服务包含两部分:一入一出。“入”指的是添加,即将生成的文本内容作为源字符串添加索引或者将其从索引中删除,“出”指的是读出,即向用户提供全文搜索服务,让用户可以通过关键词定位出源字符串。数据库搜索则是将文本内容存储在数据库字段中,再利用数据库的结构化查询语言(Structured Query Language,SQL)查询数据,交互显示文件。
[0078]通过前述实际的应用场景举例可知,本发明实施例利用po1、pdfbox、java 10、数据库检索技术以及lucene对文件的查询检索进行快速的优化。支持主流文件数据内容的转换和提取,利用java的多线程、异步执行、线程池对文件进行循环读取后,再批量抽取内容。具备较为完善、较高性能的文件批量提取文本功能。本发明实施例中,可以利用文件读取工具将文件内容读取出来,将文件文本内容存储于搜索引擎的索引中和数据库字段中。以达到能够快速搜索文件、检索文件内容的目的。
[0079]在本发明的一些实施例中,步骤104将文本内容添加到lucene索引中或者数据库字段中,具体可以包括如下步骤:
[0080]Dl、将待处理的文件的文件路径和文件属性信息、文本内容同时添加到lucene索引中或者数据库字段中。
[0081]在实际应用中,在lucene索引中或者数据库字段中添加文件内容时,还可以将待处理的文件的文件路径和文件属性信息也添加到lucene索引中或者数据库字段中,从而使得在lucene搜索引擎和数据库搜索引擎中能够检索出和待处理的文件相关的更多内容,使得用户的检索效率更高。其中,文件路径指的是待处理的文件在服务器中的存储路径,文件属性信息可以指的是待处理的文件的属性,例如文件格式、文件大小、文件所属用户的部分、文件创建时间等。
[0082]通过前述实施例对本发明的举例说明可知,本发明实施例中服务器的临时文件夹中存放有文件,当临时文件夹中还存在待处理的文件时,获取待处理的文件对应的文件格式,本发明实施例中对于不同的文件格式可以选择相应的文本读取器,使用该文本读取器将待处理的文件读取成文件流,并从文件流中抽取出文本内容,因此本发明实施例中通过对文本格式的判断选择具体的文本读取器,从文件流中自动提取出文本内容,这些文本内容添加到lucene索引中或者数据库字段中,用户通过lucene索引检索lucene搜索引擎,或通过数据库字段检索数据库搜索引擎。因此本发明实施例中,对于未处理的文件不能直接放入服务器,而是通过服务器的临时文件夹进行中转,通过文本读取器自动抽取文件内容,免去使用者自行建立关键词的麻烦。因此可以对文件的查询检索进行快速的优化。支持文件内容数据的转换和提取,具备较为完善、较高性能的文本功能。
[0083]前述实施例介绍了本发明实施例提供的文件的管理方法,接下来介绍本发明实施例提供的一种文件的管理装置,请参阅如图3所示,本发明实施例提供的文件的管理装置300,可以包括:
[0084]格式获取模块301,用于从服务器的临时文件夹中获取待处理的文件,并获取所述待处理的文件对应的文件格式;
[0085]读取器选择模块302,用于根据获取到的所述文件格式选择相应的文本读取器;
[0086]内容抽取模块303,用于使用所述文本读取器将所述待处理的文件读取成文件流,并从所述文件流中抽取出文本内容;
[0087]内容保存模块304,用于将所述文本内容添加到lucene索引中或者数据库字段中,以便于用户通过所述lucene索引检索lucene搜索引擎,或通过所述数据库字段检索数据库搜索引擎。
[0088]在本发明的一些实施例中,请参阅如图3-b所示,所述格式获取模块301,包括:
[0089]解析模块3011,用于解析所述待处理的文件的属性信息;
[0090]格式确定模块3012,用于根据所述属性信息确定所述待处理的文件对应的文件格式为如下格式中的一种:叉18、叉18叉、(10(3、(100叉、卩(1;1^、七叉1:、卩卩1:、卩卩七叉。
[0091]在本发明的一些实施例中,所述读取器选择模块302,具体用于当所述待处理的文件对应的文件格式为xls格式时,选择HSSFWorkbook模块作为文本读取器;当所述待处理的文件对应的文件格式为xlsx格式时,选择XSSFWorkbook模块作为文本读取器;当所述待处理的文件对应的文件格式为doc格式时,选择HffPFDocument模块作为文本读取器;当所述待处理的文件对应的文件格式为docx格式时,选择XWPFDocument模块作为文本读取器;当所述待处理的文件对应的文件格式为pdf格式时,选择PDFParser模块作为文本读取器;当所述待处理的文件对应的文件格式为txt格式时,选择FiIeReader模块作为文本读取器;当所述待处理的文件对应的文件格式为PPt格式时,选择HSLFSlideShow模块作为文本读取器;当所述待处理的文件对应的文件格式为PPtx格式时,选择XSLFSlideShow模块作为文本读取器。
[0092]在本发明的一些实施例中,进一步的,所述内容抽取模块303,具体用于当所述待处理的文件对应的文件格式为xls格式时,使用HSSFWorkbook模块从xls文件中创建出xls文件流,并从所述xls文件流中使用HSSFExcelExtractor模块抽取出xls文本内容;当所述待处理的文件对应的文件格式为xlsx格式时,使用XSSFWorkbook模块从xlsx文件中创建出xlsx文件流,并从所述xlsx文件流中使用XSSFExce IExtractor模块抽取出xlsx文本内容;当所述待处理的文件对应的文件格式为doc格式时,使用HWPFDocument模块从doc文件中创建出doc文件流,并从所述doc文件流中使用HffPFWordExtractor模块抽取出doc文本内容;当所述待处理的文件对应的文件格式为docx格式时,使用XWPFDocument模块从docx文件中创建出docx文件流,并从所述docx文件流中使用XWPFWordExtractor模块抽取出docx文本内容;当所述待处理的文件对应的文件格式为Pdf格式时,使用TOFParser模块从pdf文件中创建出pdf文件流,并从所述pdf文件流中使用PDFTextStripper模块抽取出pdf文本内容;当所述待处理的文件对应的文件格式为txt格式时,使用Fi lefci ter模块从txt文件中创建出txt文件流,并从所述txt文件流中使用FiIeWriter模块抽取出txt文本内容;当所述待处理的文件对应的文件格式为PPt格式时,使用HSLFSlideShow模块从ppt文件中创建出ppt文件流,并从所述PPt文件流中使用HSLF PowerPointExtractor模块抽取出ppt文本内容;当所述待处理的文件对应的文件格式为PPtx格式时,使用XSLFSlideShow模块从pptx文件中创建出PPtx文件流,并从所述pptx文件流中使用XSLFPowerPo intExtrac tor模块抽取出pptx文本内容。
[0093]在本发明的一些实施例中,所述内容保存模块304,用于将所述待处理的文件的文件路径和文件属性信息、所述文本内容同时添加到lucene索引中或者数据库字段中。
[0094]通过前述实施例对本发明的举例说明可知,本发明实施例中服务器的临时文件夹中存放有文件,当临时文件夹中还存在待处理的文件时,获取待处理的文件对应的文件格式,本发明实施例中对于不同的文件格式可以选择相应的文本读取器,使用该文本读取器将待处理的文件读取成文件流,并从文件流中抽取出文本内容,因此本发明实施例中通过对文本格式的判断选择具体的文本读取器,从文件流中自动提取出文本内容,这些文本内容添加到lucene索引中或者数据库字段中,用户通过lucene索引检索lucene搜索引擎,或通过数据库字段检索数据库搜索引擎。因此本发明实施例中,对于未处理的文件不能直接放入服务器,而是通过服务器的临时文件夹进行中转,通过文本读取器自动抽取文件内容,免去使用者自行建立关键词的麻烦。因此可以对文件的查询检索进行快速的优化。支持文件内容数据的转换和提取,具备较为完善、较高性能的文本功能。
[0095]另外需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本发明提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
[0096]通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件的方式来实现,当然也可以通过专用硬件包括专用集成电路、专用CPU、专用存储器、专用元器件等来实现。一般情况下,凡由计算机程序完成的功能都可以很容易地用相应的硬件来实现,而且,用来实现同一功能的具体硬件结构也可以是多种多样的,例如模拟电路、数字电路或专用电路等。但是,对本发明而言更多情况下软件程序实现是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘、U盘、移动硬盘、只读存储器(R0M,Read-0nly Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
[0097]综上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照上述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对上述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
【主权项】
1.一种文件的管理方法,其特征在于,包括: 从服务器的临时文件夹中获取待处理的文件,并获取所述待处理的文件对应的文件格式; 根据获取到的所述文件格式选择相应的文本读取器; 使用所述文本读取器将所述待处理的文件读取成文件流,并从所述文件流中抽取出文本内容; 将所述文本内容添加到Iucene索引中或者数据库字段中,以便于用户通过所述Iucene索引检索Iucene搜索引擎,或通过所述数据库字段检索数据库搜索引擎。2.根据权利要求1所述的一种文件的管理方法,其特征在于,所述获取所述待处理的文件对应的文件格式,包括: 解析所述待处理的文件的属性信息; 根据所述属性信息确定所述待处理的文件对应的文件格式为如下格式中的一种:xls、xlsx、doc、docx、pdf、txt、ppt、pptx03.根据权利要求2所述的一种文件的管理方法,其特征在于,所述根据获取到的所述文件格式选择相应的文本读取器,包括: 当所述待处理的文件对应的文件格式为xls格式时,选择HSSFWorkbook模块作为文本读取器; 当所述待处理的文件对应的文件格式为xlsx格式时,选择XSSFWorkbook模块作为文本读取器; 当所述待处理的文件对应的文件格式为doc格式时,选择HWPFDocument模块作为文本读取器; 当所述待处理的文件对应的文件格式为docx格式时,选择XWPFDocument模块作为文本读取器; 当所述待处理的文件对应的文件格式为pdf格式时,选择F1DFParser模块作为文本读取器; 当所述待处理的文件对应的文件格式为txt格式时,选择Fi IeReader模块作为文本读取器; 当所述待处理的文件对应的文件格式为PPt格式时,选择HSLFSlideShow模块作为文本读取器; 当所述待处理的文件对应的文件格式为PPtx格式时,选择XSLFSlideShow模块作为文本读取器。4.根据权利要求3所述的一种文件的管理方法,其特征在于,所述使用所述文本读取器将所述待处理的文件读取成文件流,并从所述文件流中抽取出文本内容,包括: 当所述待处理的文件对应的文件格式为xls格式时,使用HSSFWorkbook模块从xls文件中创建出xls文件流,并从所述xls文件流中使用HSSFExce IExtractor模块抽取出xls文本内容; 当所述待处理的文件对应的文件格式为xlsx格式时,使用XSSFWorkbook模块从xlsx文件中创建出xl sx文件流,并从所述xl sx文件流中使用XSSFExce IExtractor模块抽取出xl sx文本内容; 当所述待处理的文件对应的文件格式为doc格式时,使用HWPFDocument模块从doc文件中创建出doc文件流,并从所述doc文件流中使用HWPFWordExtractor模块抽取出doc文本内容; 当所述待处理的文件对应的文件格式为docx格式时,使用XWPFDocument模块从docx文件中创建出docx文件流,并从所述docx文件流中使用XWPFWordExtractor模块抽取出docx文本内容; 当所述待处理的文件对应的文件格式为pdf格式时,使用TOFParser模块从pdf文件中创建出pdf文件流,并从所述pdf文件流中使用F1DFTextStripper模块抽取出pdf文本内容; 当所述待处理的文件对应的文件格式为txt格式时,使用Fi lefci ter模块从txt文件中创建出txt文件流,并从所述txt文件流中使用Fi IeWriter模块抽取出txt文本内容; 当所述待处理的文件对应的文件格式为PPt格式时,使用HSLFSlideShow模块从ppt文件中创建出PPt文件流,并从所述ppt文件流中使用HSLF PowerPointExtractor模块抽取出PPt文本内容; 当所述待处理的文件对应的文件格式为PPtx格式时,使用XSLFSlideShow模块从pptx文件中创建出PPtx文件流,并从所述pptx文件流中使用XSLFPowerPo intExtractor模块抽取出pptx文本内容。5.根据权利要求1所述的一种文件的管理方法,其特征在于,所述将所述文本内容添加到Iucene索引中或者数据库字段中,包括: 将所述待处理的文件的文件路径和文件属性信息、所述文本内容同时添加到Iucene索引中或者数据库字段中。6.一种文件的管理装置,其特征在于,包括: 格式获取模块,用于从服务器的临时文件夹中获取待处理的文件,并获取所述待处理的文件对应的文件格式; 读取器选择模块,用于根据获取到的所述文件格式选择相应的文本读取器; 内容抽取模块,用于使用所述文本读取器将所述待处理的文件读取成文件流,并从所述文件流中抽取出文本内容; 内容保存模块,用于将所述文本内容添加到Iucene索引中或者数据库字段中,以便于用户通过所述Iucene索引检索Iucene搜索引擎,或通过所述数据库字段检索数据库搜索引擎。7.根据权利要求6所述的一种文件的管理装置,其特征在于,所述格式获取模块,包括: 解析模块,用于解析所述待处理的文件的属性信息; 格式确定模块,用于根据所述属性信息确定所述待处理的文件对应的文件格式为如下格式中的一种:xls、xlsx、doc、docx、pdf、txt、ppt、pptx ο8.根据权利要求7所述的一种文件的管理装置,其特征在于,所述读取器选择模块,具体用于当所述待处理的文件对应的文件格式为xls格式时,选择HSSFWorkbook模块作为文本读取器;当所述待处理的文件对应的文件格式为xlsx格式时,选择XSSFWorkbook模块作为文本读取器;当所述待处理的文件对应的文件格式为doc格式时,选择HWPFDocument模块作为文本读取器;当所述待处理的文件对应的文件格式为docx格式时,选择XWPFDocument模块作为文本读取器;当所述待处理的文件对应的文件格式为pdf格式时,选择PDFParser模块作为文本读取器;当所述待处理的文件对应的文件格式为txt格式时,选择FileReader模块作为文本读取器;当所述待处理的文件对应的文件格式为PPt格式时,选择HSLFSlideShow模块作为文本读取器;当所述待处理的文件对应的文件格式为pptx格式时,选择XSLFSlideShow模块作为文本读取器。9.根据权利要求8所述的一种文件的管理装置,其特征在于,所述内容抽取模块,具体用于当所述待处理的文件对应的文件格式为xls格式时,使用HSSFWorkbook模块从xls文件中创建出xls文件流,并从所述xls文件流中使用HSSFExce IExtractor模块抽取出xls文本内容;当所述待处理的文件对应的文件格式为xlsx格式时,使用XSSFWorkbook模块从xlsx文件中创建出xlsx文件流,并从所述xlsx文件流中使用XSSFExce IExtractor模块抽取出xlsx文本内容;当所述待处理的文件对应的文件格式为doc格式时,使用HffPFDocument模块从doc文件中创建出doc文件流,并从所述doc文件流中使用HWPFWordExtractor模块抽取出doc文本内容;当所述待处理的文件对应的文件格式为docx格式时,使用XWPFDocument模块从docx文件中创建出docx文件流,并从所述docx文件流中使用XWPFWordExtractor模块抽取出docx文本内容;当所述待处理的文件对应的文件格式为pdf格式时,使用TOFParser模块从pdf文件中创建出pdf文件流,并从所述pdf文件流中使用PDFTextStr ipper模块抽取出pdf文本内容;当所述待处理的文件对应的文件格式为txt格式时,使用Filefciter模块从txt文件中创建出txt文件流,并从所述txt文件流中使用Fi IeWri ter模块抽取出txt文本内容;当所述待处理的文件对应的文件格式为PPt格式时,使用HSLFSlideShow模块从ppt文件中创建出ppt文件流,并从所述ppt文件流中使用HSLF PowerPointExtractor模块抽取出ppt文本内容;当所述待处理的文件对应的文件格式为pptx格式时,使用XSLFSlideShow模块从P P t X文件中创建出P P t X文件流,并从所述P P t X文件流中使用XSLFPowerPo intExtractor 模块抽取出 pptx 文本内容。10.根据权利要求6所述的一种文件的管理装置,其特征在于,所述内容保存模块,用于将所述待处理的文件的文件路径和文件属性信息、所述文本内容同时添加到Iucene索引中或者数据库字段中。
【文档编号】G06F17/30GK106021390SQ201610312975
【公开日】2016年10月12日
【申请日】2016年5月12日
【发明人】王俊鹏, 王永军, 王国顺
【申请人】福建南威软件有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1