CN113361256A - 一种基于Aspose技术的Word文档快速解析方法 - Google Patents
一种基于Aspose技术的Word文档快速解析方法 Download PDFInfo
- Publication number
- CN113361256A CN113361256A CN202110705197.9A CN202110705197A CN113361256A CN 113361256 A CN113361256 A CN 113361256A CN 202110705197 A CN202110705197 A CN 202110705197A CN 113361256 A CN113361256 A CN 113361256A
- Authority
- CN
- China
- Prior art keywords
- information
- word document
- paragraph
- node
- technology
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Document Processing Apparatus (AREA)
Abstract
本发明公开了一种基于Aspose技术的Word文档快速解析方法,包括以下步骤:S1、定义Word文档的信息结构;S2、调用Aspose库将Word文档导入至内存中;S3、在内存中解析Word文档内容。过基于Aspose技术将WORD文档中的所有内容加载到内存中,然后在内存中对WORD文档中的数据按章节结构进行分类解析,在内存中对WORD文档中的内容进行解析,使得解析效率最大化。
Description
技术领域
本发明涉及文档解析技术领域,更具体的说是涉及一种基于Aspose技术的Word文档快速解析方法。
背景技术
目前,在国防军工领域,几乎所有的WORD文档都需要按照一定的格式规范进行编写,比如GJB438B、GJB2725A等格式规范。因此在编写完WORD文档后,往往需要对此WORD文档进行格式检查;传统的检查方法分为两种,一是人工检查,这种效率很低,而且正确率不高;另一种方法是通过软件进行自动化检查,这就需要能够对WORD文档进行解析。
但是,传统的对WORD文档解析方法主要是调用Microsoft Office自带的WORD解析库。Microsoft Office自带的WORD解析库虽然能够将WORD文档中的内容完整解析出来,但是解析处理效率非常低,在实际测试中解析100页左右的WORD文档中所有信息所需时间往往在10分钟以上
因此,通过基于Aspose技术将WORD文档中的所有内容加载到内存中,然后在内存中对WORD文档中的数据按章节结构进行分类解析是本领域技术人员亟需解决的问题。
发明内容
有鉴于此,本发明提供了一种基于Aspose技术的Word文档快速解析方法;通过基于Aspose技术将WORD文档中的所有内容加载到内存中,然后在内存中对WORD文档中的数据按章节结构进行分类解析,在内存中对WORD文档中的内容进行解析,使得解析效率最大化。
为了实现上述目的,本发明采用如下技术方案:
一种基于Aspose技术的Word文档快速解析方法,包括以下步骤:
S1、定义Word文档的信息结构;
S2、调用Aspose库将Word文档导入至内存中;
S3、在内存中解析Word文档内容。
优选的,所述步骤S1具体包括:
S11、从Word文档中提取页眉页脚信息和章节信息;
S12、从章节信息中提取段落信息、表格信息、图片信息和子章节信息;
S13、从子章节信息中提取段落信息、表格信息、图片信息和子章节信息。
优选的,从所述表格信息中提取单元格信息,从所述单元格信息中提取段落信息,从所述图片信息中提取图片所属段落信息。
优选的,所述步骤S3具体包括:
S31、根据mDoc获取所有Node;
S32、获取Node对应的段落Paragraph;
S33、获取段落的大纲级别数值;
S34、根据大纲级别数值判断是否为标题,若是,则进行步骤S35,若否,则进行步骤S36;
S35、获取该段落的格式信息并添加到所属的父标题,完成后进行步骤S37;
S36、获取该段落的格式信息并添加到所属的标题对象中,完成后进行步骤S37;
S37、判断时候已遍历所有的Node,若是,则进行下一步,若否,则返回步骤S32;
S38、获取所有页眉和页脚的节点信息。
优选的,所述步骤S35具体包括:判断m_chapter_prve是否为空,若是则将m_chapter_prve赋为当前节点,若否则m_chapter_prve为当前节点的父节点或兄弟节点。
优选的,所述步骤S36具体包括:判断m_chapter_prve是否为空,若是,则将该Node对应的段落信息添加到文档对象的m_list_Paragraphs中,若否,则m_chapter_prve为当前节点的父节点。
经由上述的技术方案可知,与现有技术相比,本发明公开提供了一种基于Aspose技术的Word文档快速解析方法;通过基于Aspose技术将WORD文档中的所有内容加载到内存中,然后在内存中对WORD文档中的数据按章节结构进行分类解析,在内存中对WORD文档中的内容进行解析,使得解析效率最大化。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1附图为本发明提供的主流程结构示意图。
图2附图为本发明提供的步骤1流程结构示意图。
图3附图为本发明提供的步骤3流程结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例公开了一种基于Aspose技术的Word文档快速解析方法,包括以下步骤:
S1、定义Word文档的信息结构;
S2、调用Aspose库将Word文档导入至内存中;
S3、在内存中解析Word文档内容。
为进一步优化上述技术方案,步骤S1具体包括:
S11、从Word文档中提取页眉页脚信息和章节信息;
S12、从章节信息中提取段落信息、表格信息、图片信息和子章节信息;
S13、从子章节信息中提取段落信息、表格信息、图片信息和子章节信息。
为进一步优化上述技术方案,从表格信息中提取单元格信息,从单元格信息中提取段落信息,从图片信息中提取图片所属段落信息。
为进一步优化上述技术方案,步骤S3具体包括:
S31、根据mDoc获取所有Node;
S32、获取Node对应的段落Paragraph;
S33、获取段落的大纲级别数值;
S34、根据大纲级别数值判断是否为标题,若是,则进行步骤S35,若否,则进行步骤S36;
S35、获取该段落的格式信息并添加到所属的父标题,完成后进行步骤S37;
S36、获取该段落的格式信息并添加到所属的标题对象中,完成后进行步骤S37;
S37、判断时候已遍历所有的Node,若是,则进行下一步,若否,则返回步骤S32;
S38、获取所有页眉和页脚的节点信息。
为进一步优化上述技术方案,步骤S35具体包括:判断m_chapter_prve是否为空,若是则将m_chapter_prve赋为当前节点,若否则m_chapter_prve为当前节点的父节点或兄弟节点。
为进一步优化上述技术方案,步骤S36具体包括:判断m_chapter_prve是否为空,若是,则将该Node对应的段落信息添加到文档对象的m_list_Paragraphs中,若否,则m_chapter_prve为当前节点的父节点。
获取段落格式信息为:
获取字体名称,获取字体大小,获取字体背景色,获取字体背景色,获取字体背景色,获取字体加粗标志,获取字体底色,获取字体底色,获取字体底色,获取字体形状,获取字体删除线标志,获取字体下划线标志,获取样式名称,获取编号值,获取段落内容,获取首行缩进,获取首行缩进单位,获取左侧缩进值,获取右侧缩进值,获取左侧缩进单位,获取右侧缩进单位,获取段前间距,获取端口间距,获取段前间距单位,获取段后间距单位,获取行距值,获取行距类型,获取对齐方式,获取大纲级别数值。
Aspose是一款先进的类库,通过它可以直接在JAVA、C#或C++等应用程序中执行各种文档处理任务。通过调用Aspose库可以将指定的WORD文档内容加载到内存中,然后在内存中对WORD文档内容进行解析就可以达到快速解析WORD文档的目的。
以JAVA编程语言为例,通过简单的Aspose库提供的方法就能加载WORD文档,如Document mDoc=new Document(filepath);(其中的filepath就是WORD文档的路径),不管要解析的WORD文档大小多大,只需要调用此方法即可。调用结束后,WORD文档的内容都存放在mDoc对象所处的内存中。
得到WORD文档内容对象Document的实例mDoc;在实例mDoc中,WORD文档中的所有内容都以Node的形式存在,每个Node可以是表格、图片、页眉页脚、段落等类型,因此解析的过程实际上就是将所有Node按一定规律组成上图中的文档结构图形式的过程。解析过程如图3所示。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (6)
1.一种基于Aspose技术的Word文档快速解析方法,其特征在于,包括以下步骤:
S1、定义Word文档的信息结构;
S2、调用Aspose库将Word文档导入至内存中;
S3、在内存中解析Word文档内容。
2.根据权利要求1所述的一种基于Aspose技术的Word文档快速解析方法,其特征在于,所述步骤S1具体包括:
S11、从Word文档中提取页眉页脚信息和章节信息;
S12、从章节信息中提取段落信息、表格信息、图片信息和子章节信息;
S13、从子章节信息中提取段落信息、表格信息、图片信息和子章节信息。
3.根据权利要求2所述的一种基于Aspose技术的Word文档快速解析方法,其特征在于,从所述表格信息中提取单元格信息,从所述单元格信息中提取段落信息,从所述图片信息中提取图片所属段落信息。
4.根据权利要求1所述的一种基于Aspose技术的Word文档快速解析方法,其特征在于,所述步骤S3具体包括:
S31、根据mDoc获取所有Node;
S32、获取Node对应的段落Paragraph;
S33、获取段落的大纲级别数值;
S34、根据大纲级别数值判断是否为标题,若是,则进行步骤S35,若否,则进行步骤S36;
S35、获取该段落的格式信息并添加到所属的父标题,完成后进行步骤S37;
S36、获取该段落的格式信息并添加到所属的标题对象中,完成后进行步骤S37;
S37、判断时候已遍历所有的Node,若是,则进行下一步,若否,则返回步骤S32;
S38、获取所有页眉和页脚的节点信息。
5.根据权利要求4所述的一种基于Aspose技术的Word文档快速解析方法,其特征在于,所述步骤S35具体包括:判断m_chapter_prve是否为空,若是则将m_chapter_prve赋为当前节点,若否则m_chapter_prve为当前节点的父节点或兄弟节点。
6.根据权利要求4所述的一种基于Aspose技术的Word文档快速解析方法,其特征在于,所述步骤S36具体包括:判断m_chapter_prve是否为空,若是,则将该Node对应的段落信息添加到文档对象的m_list_Paragraphs中,若否,则m_chapter_prve为当前节点的父节点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110705197.9A CN113361256A (zh) | 2021-06-24 | 2021-06-24 | 一种基于Aspose技术的Word文档快速解析方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110705197.9A CN113361256A (zh) | 2021-06-24 | 2021-06-24 | 一种基于Aspose技术的Word文档快速解析方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113361256A true CN113361256A (zh) | 2021-09-07 |
Family
ID=77536211
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110705197.9A Pending CN113361256A (zh) | 2021-06-24 | 2021-06-24 | 一种基于Aspose技术的Word文档快速解析方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113361256A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114237737A (zh) * | 2021-11-25 | 2022-03-25 | 北京轩宇信息技术有限公司 | 一种对Word文件数据结构化条目化的处理方法 |
Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101980183A (zh) * | 2010-09-17 | 2011-02-23 | 深圳市万兴软件有限公司 | 一种解析Word文件信息的方法及其系统 |
CN103914440A (zh) * | 2014-03-06 | 2014-07-09 | 广东电网公司电网规划研究中心 | 输变电工程word文档表格内容中工程特性指标的智能提取方法 |
CN103927296A (zh) * | 2014-03-06 | 2014-07-16 | 广东电网公司电网规划研究中心 | 输变电工程word文档段落内容中工程特性指标的智能提取方法 |
CN104598635A (zh) * | 2015-02-06 | 2015-05-06 | 无锡江南计算技术研究所 | 一种基于xml描述的复杂文档自动生成方法 |
CN105975446A (zh) * | 2016-04-19 | 2016-09-28 | 天津天大求实电力新技术股份有限公司 | 手机端分模块显示word文档内容的方法及系统 |
CN106326194A (zh) * | 2015-07-06 | 2017-01-11 | 北大方正集团有限公司 | 一种应用于文件格式转换场景下的目录生成方法和装置 |
CN106528877A (zh) * | 2016-12-12 | 2017-03-22 | 远光软件股份有限公司 | word文档的模块化方法及系统 |
CN106776495A (zh) * | 2016-11-23 | 2017-05-31 | 北京信息科技大学 | 一种文档逻辑结构重建方法 |
CN110083805A (zh) * | 2018-01-25 | 2019-08-02 | 北京大学 | 一种将Word文件转换为EPUB文件的方法及系统 |
CN110096689A (zh) * | 2019-05-17 | 2019-08-06 | 北京市律典通科技有限公司 | 模板式法律文书信息填充方法及装置 |
CN110889280A (zh) * | 2018-09-06 | 2020-03-17 | 上海智臻智能网络科技股份有限公司 | 基于文档拆分的知识库建设方法及装置 |
CN111460083A (zh) * | 2020-03-31 | 2020-07-28 | 北京百度网讯科技有限公司 | 文档标题树的构建方法、装置、电子设备及存储介质 |
CN112507666A (zh) * | 2020-12-21 | 2021-03-16 | 北京百度网讯科技有限公司 | 文档转换方法、装置、电子设备及存储介质 |
CN112597062A (zh) * | 2021-02-04 | 2021-04-02 | 北京关键科技股份有限公司 | 军用软件结构化质量数据抽取方法、装置及软件测试装置 |
CN112783957A (zh) * | 2019-11-11 | 2021-05-11 | 上海遴睿教育科技有限公司 | 一种英语阅读word文档格式化导入方法及系统 |
-
2021
- 2021-06-24 CN CN202110705197.9A patent/CN113361256A/zh active Pending
Patent Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101980183A (zh) * | 2010-09-17 | 2011-02-23 | 深圳市万兴软件有限公司 | 一种解析Word文件信息的方法及其系统 |
CN103914440A (zh) * | 2014-03-06 | 2014-07-09 | 广东电网公司电网规划研究中心 | 输变电工程word文档表格内容中工程特性指标的智能提取方法 |
CN103927296A (zh) * | 2014-03-06 | 2014-07-16 | 广东电网公司电网规划研究中心 | 输变电工程word文档段落内容中工程特性指标的智能提取方法 |
CN104598635A (zh) * | 2015-02-06 | 2015-05-06 | 无锡江南计算技术研究所 | 一种基于xml描述的复杂文档自动生成方法 |
CN106326194A (zh) * | 2015-07-06 | 2017-01-11 | 北大方正集团有限公司 | 一种应用于文件格式转换场景下的目录生成方法和装置 |
CN105975446A (zh) * | 2016-04-19 | 2016-09-28 | 天津天大求实电力新技术股份有限公司 | 手机端分模块显示word文档内容的方法及系统 |
CN106776495A (zh) * | 2016-11-23 | 2017-05-31 | 北京信息科技大学 | 一种文档逻辑结构重建方法 |
CN106528877A (zh) * | 2016-12-12 | 2017-03-22 | 远光软件股份有限公司 | word文档的模块化方法及系统 |
CN110083805A (zh) * | 2018-01-25 | 2019-08-02 | 北京大学 | 一种将Word文件转换为EPUB文件的方法及系统 |
CN110889280A (zh) * | 2018-09-06 | 2020-03-17 | 上海智臻智能网络科技股份有限公司 | 基于文档拆分的知识库建设方法及装置 |
CN110096689A (zh) * | 2019-05-17 | 2019-08-06 | 北京市律典通科技有限公司 | 模板式法律文书信息填充方法及装置 |
CN112783957A (zh) * | 2019-11-11 | 2021-05-11 | 上海遴睿教育科技有限公司 | 一种英语阅读word文档格式化导入方法及系统 |
CN111460083A (zh) * | 2020-03-31 | 2020-07-28 | 北京百度网讯科技有限公司 | 文档标题树的构建方法、装置、电子设备及存储介质 |
CN112507666A (zh) * | 2020-12-21 | 2021-03-16 | 北京百度网讯科技有限公司 | 文档转换方法、装置、电子设备及存储介质 |
CN112597062A (zh) * | 2021-02-04 | 2021-04-02 | 北京关键科技股份有限公司 | 军用软件结构化质量数据抽取方法、装置及软件测试装置 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114237737A (zh) * | 2021-11-25 | 2022-03-25 | 北京轩宇信息技术有限公司 | 一种对Word文件数据结构化条目化的处理方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108170602B (zh) | 一种测试用例生成方法、装置、终端及计算机可读介质 | |
CN111191079A (zh) | 一种文档内容获取方法、装置、设备及存储介质 | |
CN111881094B (zh) | 日志中关键信息提取方法、装置、终端及存储介质 | |
CN113361256A (zh) | 一种基于Aspose技术的Word文档快速解析方法 | |
CN111273903B (zh) | 网页制作方法、装置、计算机设备及计算机存储介质 | |
CN112596851A (zh) | 仿真平台的多源异构数据批量抽取方法和分析方法 | |
CN115599388B (zh) | 一种api接口文档生成方法、存储介质及电子设备 | |
CN115640316A (zh) | 数据查询的分页方法、拦截器、插件及服务器 | |
CN111507079B (zh) | 一种多语言文档生成方法及系统和设备 | |
CN110928549B (zh) | 一种重编辑前端脚本程序的方法及装置 | |
CN111325007B (zh) | 一种pptx文件的批注解析方法及终端 | |
CN111159981B (zh) | 一种Excel文档的解析翻译方法和装置 | |
CN109657010B (zh) | 文档处理方法、装置和存储介质 | |
CN115268846A (zh) | 一种添加属性信息的方法、装置及计算机可读存储介质 | |
CN109657184B (zh) | 富文本处理方法、装置、服务器及计算机可读介质 | |
CN111783482A (zh) | 一种文本翻译方法、装置、计算机设备及存储介质 | |
CN110704781A (zh) | 网页解析器 | |
CN110705210A (zh) | 中文字体的加载方法及装置 | |
CN111984671B (zh) | 一种生成创建视图脚本的方法 | |
CN116755684B (zh) | OAS Schema的生成方法、装置、设备及介质 | |
CN117874218A (zh) | 基于大模型的摘要生成方法、装置、设备及存储介质 | |
CN112528080A (zh) | 一种docx文件文本内容的提取方法及装置 | |
CN117170735A (zh) | 一种解析编辑yaml文件保留所有格式和注释的方法及系统 | |
CN111930349A (zh) | 一种程序包生成方法、装置、电子设备及存储介质 | |
CN113761948A (zh) | 配置信息处理的方法、装置、设备、存储介质及程序产品 |
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 |