CN112667563A - 一种文档管理及操作方法和系统 - Google Patents
一种文档管理及操作方法和系统 Download PDFInfo
- Publication number
- CN112667563A CN112667563A CN202011404621.8A CN202011404621A CN112667563A CN 112667563 A CN112667563 A CN 112667563A CN 202011404621 A CN202011404621 A CN 202011404621A CN 112667563 A CN112667563 A CN 112667563A
- Authority
- CN
- China
- Prior art keywords
- document
- file
- database
- office
- template
- 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
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请属于信息处理技术领域,特别是涉及一种文档管理及操作方法和系统。现有方法虽然改善了人们对office文档进行批处理的能力,但是在面对数量庞大且目录层级数太深的office文档时,其限制性条件还是太多,存在文件操作异常,管理不便,批处理效率低下,不易实现。本申请提供了一种文档管理及操作方法,所述方法包括如下步骤:步骤1:创建数据库进行文档管理;步骤2:提取所述文档的可扩展标记语言结构进行格式化;步骤3:通过所述格式化的可扩展标记语言定位进行文字批量提取并生成模板文件;步骤4:将所述文字信息与所述模板重新组合进行文档批量替换。有助于提升文档批处理的效率,使文档更易于操作和管理。
Description
技术领域
本申请属于信息处理技术领域,特别是涉及一种文档管理及操作方法和系统。
背景技术
随着计算机工业技术的不断发展以及计算机在各行各业的普及应用,计算机应用软件也应运而生,在众多应用软件当中,微软公司开发的Microsoft Office软件包凭借着操作便捷,界面简单,实现办公自动化等特点,受到人们的广泛关注,被广泛应用于文档处理、数据统计和演示文稿的工作当中。一直以来,office软件都是全球最流行的文字处理程序,提供了许多易于使用的文档创建工具,同时也提供了丰富的功能集,提供创建复杂的文档使用。在office软件中,以Microsoft Word和Microsoft Excel最有代表性,他们给用户提供了专业而便捷的文档工具和数据统计工具,帮助用户快速统计数据,排版文字并得到简洁直观的结果,逐渐成为用于存储数据的重要工具之一。然而,随着大数据时代的到来以及办公室工作人员计算机应用水平的提升,文件系统中的文件以及文件各级目录的数量正在飞速的增长,有大量的数据以office文档形式进行存储,并且office文档的目录层级结构也在不断增长,随之到来的是,人们对office文档进行高效管理和批处理的需求也在不断的提升,寻求一种便捷的office文档管理,内容批量提取和替换等批处理方法也成为国内外共同关注的热点,因此研究office文档高效管理及批处理具有非常实用的意义。
随着计算机编程语言和技术的发展,人们开始研究office文档的高效管理,应用于office批处理开发的语言及技术也在不断的发展,目前虽然已提出采用数据库表的方式来对系统中的文件进行实时管理,但目前只是对文件的目录进行管理,而缺乏对文件内容的管理。因此,在当前的大数据环境下,要快速定位、查找和操作office文档中的数据仍是非常不方便的。
发明内容
1.要解决的技术问题
基于现有方法虽然改善了人们对office文档进行批处理的能力,但是在面对数量庞大且目录层级数太深的office文档时,其限制性条件还是太多,存在文件操作异常,管理不便,批处理效率低下,不易实现的问题,本申请提供了一种文档管理及操作方法和系统。
2.技术方案
为了达到上述的目的,本申请提供了一种文档管理及操作方法,所述方法包括如下步骤:步骤1:创建数据库进行文档管理;步骤2:提取所述文档的可扩展标记语言结构进行格式化;步骤3:通过所述格式化的可扩展标记语言定位进行文字批量提取并生成模板文件;步骤4:将所述文字信息与所述模板重新组合进行文档批量替换。
本申请提供的另一种实施方式为:所述步骤1包括创建数据库,检验文件中的压缩包文件并解压,提取所有所述文件的目录层级关系并保存至所述数据库。
本申请提供的另一种实施方式为:所述数据库包括文档目录信息表,文件内容信息表,文件模板信息表,文件语言信息表和文件替换标识表。
本申请提供的另一种实施方式为:所述数据库为SQLite数据库。
本申请提供的另一种实施方式为:所述步骤2包括创建文档操作对象,合并标签结构,解析可扩展标记语言内容为可扩展标记语言文档对象模型对象,对所述可扩展标记语言文档对象模型对象进行操作,保存操作结果可扩展标记语言,并写回到文档中。
本申请提供的另一种实施方式为:所述步骤3包括在对文档的可扩展标记语言结构进行格式化之后,对所述文档内容进行提取,去重,保存至所述数据库,同时对所述文档的文件模板信息进行提取,并生成二进制流文件模板信息保存至所述数据库。
本申请提供的另一种实施方式为:所述步骤4包括将替换的文字内容保存到所述数据库中,从所述数据库中提取所述二进制流文件模板信息和所述替换的文字内容,将要所述文字信息与所述模板中相应位置一一对应进行批量组合,生成替换后的文档,实现文档内容的批量替换。
本申请提供的另一种实施方式为:所述模板采用查询文件模板方法从所述数据库中提取,采用SaveBase64StringToByteFile方法将所述二进制流模板文件转换为文档格式,并写入到临时文档文件中。
本申请还提供一种文档管理及操作系统,包括主界面单元,所述主界面单元包括菜单功能栏和交互界面,所述菜单功能栏与所述交互界面进行交互,所述菜单功能栏控制所述交互界面,所述菜单功能栏包括文档管理模块、文档结构化管理模块、文档批量提取模块和文档批量替换模块;所述交互界面,用于展示交互内容;所述文档管理模块,用于初始化数据库,文件解压缩,文件类型校验,生成文档的目录结构并保存至所述数据库中;所述文档结构化管理模块,用于转换文档后缀格式同时格式化文档的扩展标记语言结构;所述文档批量提取模块,用于提取文档中的文字并生成模板文件,然后将所述文字和所述模板文件写入到数据库中;所述文档批量替换模块,用于将文件从数据库中写出,并可让文档在原文和不同的译文之间任意切换,同时提供对文字内容的管理。
本申请提供的另一种实施方式为:所述文档管理模块包括数据库子模块、文件压缩包及类型检验子模块和文件目录提取子模块。
3.有益效果
与现有技术相比,本申请提供的一种文档管理及操作方法和系统的有益效果在于:
本申请提供的文档管理及操作方法,针对目前大量office文档在进行批量内容提取和替换时存在的文件管理不便,批处理效率低下,不易实现等问题,提出了一种基于数据库和XML的office文档管理、内容批量提取和替换的方法。
本申请提供的文档管理及操作方法,提出了基于数据库的文档结构化管理方法,解决大批量文档操作异常、管理不便的问题,从而提升文档在批处理时的文件存取效率。
本申请提供的文档管理及操作方法,结合XML技术在文件批处理上的优势,提出了基于XML结构的文档批量内容提取及替换技术,便捷实现对文档进行文字提取和定位替换的功能,进一步提升文档批处理效率。
本申请提供的文档管理及操作方法,将该技术流程封装为软件并提供用户交互界面,解决文档批量内容提取和替换时不易实现,不易操作和管理的问题。
本申请提供的文档管理及操作方法,有助于提升文档批处理的效率,使文档更易于操作和管理。
附图说明
图1是本申请的文档管理及操作方法流程示意图;
图2是本申请的XML格式化示意图;
图3是本申请的Word文件结构和文件示意图;
图4是本申请的格式化结果示意图;
图5是本申请的文档内容批量提取示意图;
图6是本申请的insertAllLineInToDb方法示意图;
图7是本申请的文档内容批量替换示意图;
图8是本申请的主界面单元示意图;
图9是本申请的文档管理模块示意图;
图10是本申请的文档结构化管理模块示意图;
图11是本申请的文档批量提取模块示意图;
图12是本申请的文档批量替换模块示意图。
具体实施方式
在下文中,将参考附图对本申请的具体实施例进行详细地描述,依照这些详细的描述,所属领域技术人员能够清楚地理解本申请,并能够实施本申请。在不违背本申请原理的情况下,各个不同的实施例中的特征可以进行组合以获得新的实施方式,或者替代某些实施例中的某些特征,获得其它优选的实施方式。
目前在对office文档管理效率上仍然有待提高。此外,在office文档批处理技术上主要的方法有VBA技术,VSTO技术和VC++技术。VBA技术是目前最普遍的应用于office批处理开发的语言技术,可以用宏命令的方法实现对office文档一些简单的批处理操作,但却存在不易实现、开放性不强等缺陷。随着信息技术的蓬勃发展,VSTO技术应运而生,VSTO技术是一套新的用于创建自定义Office应用程序的Visual Studio工具包。是VBA的替代,使得开发Office应用程序更加简单。相比起VSTO技术,VC++技术可以比较精确地实现对office文档的内容进行批量处理,如替换文档的某些汉字,符号,以及样式等,但其缺陷也十分明显,无法实现对office文档的内容进行精准管理,对office文档进行批处理时效率不高。而伴随着大数据时代的到来,大量的数据以office文档的形式保存下来,使得office文档无论是在大小还是数量上都呈现指数型上涨,同时office文档的目录层级数量也在不断增加,这无疑加大了office文档进行批处理时的难度。
在Office文档的批处理方面,主要是采用编程工具开发office批处理的软件(插件)或者工具来实现,编程工具的开发主要有三个方法,包括VBA技术、VSTO技术和VC++技术。
(1)VBA技术:VBA(Visual Basic for Applications)是Visual Basic的一种宏语言,是在其桌面应用程序中执行通用的自动化(OLE)任务的编程语言。主要能用来扩展Windows的应用程序功能,特别是Microsoft Office软件。它也可说是一种应用程式视觉化的Basic脚本。目前VBA作为开发语言可以用宏命令的方法实现对Access数据库中的数据在Word中的自动成批导出。
(2)VSTO技术:VSTO是一套用于创建自定义Office应用程序的Visual Studio工具包。是VBA的替代,使得开发Office应用程序更加简单,并且用VSTO来开发office应用程序可以使用Visual studio开发环境中的众多功能和CLR提供的内存管理,垃圾回收等功能。目前主要利用VSTO技术来开发插件,并应用于Word文档的批量处理章节序号与样式的方法上。
(3)VC++技术:VC++是一种早期的编程语言,VC调用Word,同样要参考VBA的调用方法,通过查看宏代码,可以清楚看出要使用哪些类、哪些成员函数。每一个MicrosoftOffice应用程序都在dll文件中提供了多种类型库资源,这种dll文件叫做目标库(*.olb)。VC++调用Word,需要导入库文件并导入相关的类才能使用Word中的各种功能。不同版本的应用程序其类型库文件的名字不同通过VC++调用Word即用自动化功能从Visual C++应用程序中控制Microsoft Office组件,在VC++中使用代码组件一般有3种方法:一是使用COM库函数;二是使用MFC的ClassWizard;三是使用#import指令。通过VC++技术可以比较精确地对Word文档的内容进行批量处理,如替换Word文档的某些汉字,符号,以及样式等。
目前在office文档的管理方面,主要是基于文件系统的管理方式来实现的,而由于数据库技术具有已实现,易操作等特点,被广泛应用于数据管理上。同样的,目前大多数文件系统管理主要采用数据库表的方式实现。依托服务器等硬件存储设备,在服务器中建立文件数据库,采用数据库中的数据表来存储文件目录信息,再通过数据表之间的联系来建立目录之间的层级关系。数据库表法可以利用数据库的查询语句实现对文件的快速定位和查找。
参见图1~12,本申请提供一种文档管理及操作方法,所述方法包括如下步骤:步骤1:创建数据库进行文档管理;步骤2:提取所述文档的可扩展标记语言(XML)结构进行格式化;步骤3:通所述过格式化的可扩展标记语言定位进行文字批量提取并生成模板文件;步骤4:将所述文字信息与所述模板重新组合进行文档批量替换。
具体的,创建数据库进行office文档管理,提取office文档的xml结构进行格式化。通过格式化的xml定位进行文字批量提取并生成模板文件。文字与模板重组合进行office文档批量替换。
进一步地,所述步骤1包括创建数据库,检验文件中的压缩包文件并解压,提取所有所述文件的目录层级关系并保存至所述数据库。
进一步地,所述数据库包括文档目录信息表,文件内容信息表,文件模板信息表,文件语言信息表和文件替换标识表。
进一步地,所述数据库为SQLite数据库。
进一步地,所述步骤2包括创建文档操作对象,合并标签结构,解析可扩展标记语言内容为可扩展标记语言文档对象模型对象,对所述可扩展标记语言文档对象模型对象进行操作,保存操作结果可扩展标记语言,并写回到文档中。
进一步地,所述步骤3包括在对文档的可扩展标记语言结构进行格式化之后,对所述文档内容进行提取,去重,保存至所述数据库,同时对所述文档的文件模板信息进行提取,并生成二进制流文件模板信息保存至所述数据库。
进一步地,所述步骤4包括将替换的文字内容保存到所述数据库中,从所述数据库中提取所述二进制流文件模板信息和所述替换的文字内容,将要所述文字信息与所述模板中相应位置一一对应进行批量组合,生成替换后的文档,实现文档内容的批量替换。
进一步地,所述模板采用查询文件模板方法从所述数据库中提取,采用SaveBase64StringToByteFile(二进制流转文档)方法将所述二进制流模板文件转换为文档格式,并写入到临时文档文件中。
本申请还提供一种文档管理及操作系统,包括主界面单元,所述主界面单元包括菜单功能栏和交互界面,所述菜单功能栏与所述交互界面进行交互,所述菜单功能栏控制所述交互界面,所述菜单功能栏包括文档管理模块、文档结构化管理模块、文档批量提取模块和文档批量替换模块;所述交互界面,用于展示交互内容;所述文档管理模块,用于初始化数据库,文件解压缩,文件类型校验,生成文档的目录结构并保存至所述数据库中;所述文档结构化管理模块,用于转换文档后缀格式同时格式化文档的扩展标记语言结构;所述文档批量提取模块,用于提取文档中的文字并生成模板文件,然后将所述文字和所述模板文件写入到数据库中;所述文档批量替换模块,用于将文件从数据库中写出,并可让文档在原文和不同的译文之间任意切换,同时提供对文字内容的管理。
进一步地,所述文档管理模块包括数据库子模块、文件压缩包及类型检验子模块和文件目录提取子模块。
实施例
创建office文档数据库
SQLite数据库是一种轻量级的数据库技术,本申请采用SQLite数据库来构建office文档数据库,可以便捷的存储office文档的目录信息,office文档的原始文字信息,office文档的替换信息,office文档模板信息,同时可以利用SQLite数据库管理office文件目录,例如更新文件目录,删除文件目录,根据目录快速定位和查找文件等功能;此外,可以根据SQLite数据库管理office文件内容,例如更新文件内容,删除文件内容,替换文件内容等功能。因此,构建office文档数据库之后,便可以将office文件中的内容看作数据,利用数据库SQL语句可以快速管理任意office文档中的任意数据内容。在本申请中,office文件目录,文件内容和文件模板分别存储在各自独立的表上,此外,再加上三张功能表,office文档数据库一共由五张表组成,分别为文档目录信息表,文件内容信息表,文件模板信息表,文件语言信息表,文件替换标识表。
(1)文档目录信息表用于管理office文档的目录信息,便于记录和查找文件目录信息,详情见表1,表1是文档目录信息的示意表。
名称 | 含义 | 说明 |
FileId | 主键 | 标识主键 |
Parent | 父级标识 | 标识父级目录的标识 |
Type | 文件类型 | 标识是文件目录或文件 |
Createdate | 创建日期 | 标识创建日期 |
FileLangId | 文件名标识 | 与FileLang表映射的主键 |
Note | 说明 | 标识说明 |
FileExt | 扩展名 | 标识文件的扩展名 |
表1
如表1中的名称所示,Type、Createdate、Note、FileExt可以理解为office文档的属性对象,而Parent为office文档的父级标识,指向该文档的上一级目录,通过访问该字段可追溯office文档的目录信息。
(2)文件内容信息表用于存储和管理office文档的内容信息,便于快速查找和提取office文档内容,该内容包含office文档原始文字内容以及替换的文字内容。详情见表2,表2是文件内容信息示意表。
名称 | 含义 | 说明 |
LangId | 主键 | 标识主键 |
Src | 原文 | 标识原文 |
Dist | 译文 | 标识译文 |
表2
如表2中的名称所示,Src和Dist字段分别用于存储office文档原始文字内容以及替换的文字内容,便于快速查找和提取office文档内容。
(3)文件模板信息表用于存储和管理office文档的模板信息,文件的模板信息,即将office文档中的文字内容提取出来后剩下的文件文字结构和文件样式结构等内容。将文件的模板信息以二进制流的方式存储到数据库表中,为后续office文档的替换操作提供帮助。详情见表3,表3是文件模板信息示意表。
名称 | 含义 | 说明 |
Id | 主键 | 标识主键 |
FileId | 文件主键 | 与File表映射的主键 |
FileContent | 模板内容 | 文件模板的二进制流 |
表3
如表3中的名称所示,FileContent字段存储了office文档模板的二进制流数据,FileId字段用于关联表1,即关联office文档的基本信息。通过表3可以快速管理每个office文档的模板数据,包括添加、修改、删除操作。
(4)文件语言信息表用于记录office文档的语言类型信息,用于标识文档中的语言类型,是office文档信息的补充表格。详情见表4,表4是文件模板信息示意表。
名称 | 含义 | 说明 |
FileLangId | 主键 | 标识主键 |
Type | 类型 | 标识语言类型 |
Content | 文件名 | 标识不同语言的文件名 |
表4
如表4中的名称所示,Type和Content字段用于标识文件名的语言类型,是作为office文档的辅助表格。
(5)文件替换标识表用于记录office文档需要被替换的位置,同时关联文件信息表以及文件内容信息表,主要用于office文档内容提取和替换的辅助功能表。详情见表5,表5是文件替换标识表。
表5
如表5中的名称所示,Reploc字段用于标识office文档要替换的位置,FileId和LangId字段用于关联文件信息表以及文件内容信息表,主要用于office文档内容提取和替换的辅助替换。
2文档xml结构格式化
为了能对office文档的文字内容进行批量提取替换操作,首先需要将传统office文档转换为xml格式化的office文档,便于对office文档的xml格式进行提取;其次,提出了office文档xml结构格式化方法,重新格式化office文档的xml结构,便于对office文档内容的提取。
传统的office文档文件,例如*.doc,*.xls,*.rft等文件,其文件结构中不包含xml文件,因此需要对这类文件进行转换,转换为以*.docx,*.xlsx格式为主的office文档。在本申请中,采用了调取office的宏指令方法进行office文档的格式转换。具体获取office文档对象并将文档对象另存为docx、xlsx文档。对office文档进行格式转换之后,提取其xml结构文件,接着利用xml结构文件定位office文档的文字内容并进行提取。但是,xml结构文件中的文字内容并非像office文档中的文字内容一样具有规律性,导致对office文档文字内容进行定位时不易实现,效率低下。针对这一问题,本申请提出了office文档xml结构格式化方法,重新格式化office文档的xml结构,以便于实现office文档文字内容的提取和替换。具体为通过RpWord或者RpExcel对象创建word(docx)或者excel文档的操作对象,用于读取office文档word/document.xml、xl/sharedStrings.xml的文件内容(单元格信息)和xl/workbook.xml的文件内容(sheet信息)文件内容;其次合并<w:t>标签结构,利用xmldom.Must解析xml内容为xmldom对象对xmldom对象进行操作,最后保存操作结果xml,并写回到word文档中。Xml格式化的代码示意图如图2所示。
为了便于理解,以一个简单的word文档的xml结构格式化为例来说明此过程对word文档内容及结构的改变。例如,如图3中所示,这是一个简单的Word文档及其xml文件的示意图,图3中左侧为可以直观的word文档内容,右侧为word文档隐藏的xml结构。从图3中可以明显观察到,word文档中连续的句子在对应xml文件中呈现出非连续状态,也就是说,要对word文档中一句连续的语句进行定位并替换语句内容时,在其xml文件中获取到的内容却不是连续的,因此需要对xml文件进行格式化处理,将原本属于同一个段落的文字进行合并,合并的过程为遍历xml结构,合并每一个<w:p>标签内的<w:t>内容,合并的过程中会有空格标签出现,如“<w:txml:space=’preserve’>”,此时因根据实际文档的空格位置对xml文件进行格式化,例如在图3中,此时应该在“<w:t>第一个段落内容</w:t>”后面添加标志<preserve>标识在这句话后面加上空格,以此类推,最后xml文件格式化结果如图4所示。
3office文档内容批量提取
在对office文档的xml结构进行格式化之后,对office文档内容进行提取,去重,然后保存至数据库,同时对office文档的文件模板信息进行提取,并生成二进制流保存至数据库,便于对office文档进行批量替换。图5为office文档内容进行批量提取的代码,具体过程为:首先通过RpWord或者RpExcel对象创建word或者excel文档的操作对象,用于读取文档的内容信息;其次合并xml节点,提取所有文档的内容并去重;接着将所有的文字内容存储到数据库中并为文字生成标记符号,代码如图6所示;最后创建模板类操作对象,并将模板文件转换为二进制流用于存储至数据库中,便于对office文档进行批量替换。
4office文档内容批量替换
在完成office文档的内容批量提取之后,执行office文档内容的批量替换。首先需要将替换的文字内容保存到数据库中,接着从数据库中输出二进制流文件模板信息和替换的文字内容,将要替换的文字信息与模板中相应的位置一一对应进行批量组合,最后生成替换后的office文档,实现office文档内容的批量替换。office文档内容批量替换的代码如图7所示,具体过程为:首先生成一个临时的office文档文件tmp.docx,其次采用QueryFileTemplate方法从数据库中提取office文件模板,同时采用SaveBase64StringToByteFile方法将数据库中查询到的二进制流格式的模板文件转换为office文档格式,并写入到临时的office文档文件tmp.docx中,然后通过RpWord或者RpExcel对象创建word(docx)或者excel文档的操作对象,用于将保存了office文档格式的临时文件tmp.docx与替换后的文字内容组合,并进行输出,实现office文档内容批量替换。
该方法有助于提升office文档批处理的效率,使office文档更易于操作和管理。
本申请将该技术流程封装为软件并提供用户交互界面,解决office文档管理、批量内容提取和替换时不易实现,不易操作和管理的问题,该软件的设计主要分为主界面设计、office文档管理模块设计、文档结构化设计、文档批量提取模块设计和文档批量替换模块设计。
1)主界面单元
主界面的单元左侧为菜单功能栏,可选择office文档管理、批量内容提取和替换的具体某一步骤执行。右侧为本申请的整个算法流程交互界面,同样可选择本申请中的具体某一步骤对office文档进行操作和管理,其界面设计如图8所示。
2)office文档管理模块
office文档管理模块由数据库配置界面、文件压缩包及类型检验界面和文件目录提取界面组成,其模块的设计为各个配置文件的交互界面,配置内容包括数据库、工具类、模板和各个步骤的输入输出文件夹路径,用于初始化数据库,文件解压缩,文件类型校验,生成office文档的目录结构并保存到数据库中,其界面设计如图9所示。
3)文档结构化管理模块
文档结构化管理模块主要为office文档和xml结果的格式化交互界面,主要将office文档中的.xls、.doc和.rtf后缀格式转换为.xlsx、.docx和.docx格式,同时格式化文档的xml结构,其界面设计如图10所示。
4)文档批量提取模块
文档批量提取模块主要为提供文档批量提取的交互界面,用于提取.xlsx和.docx文档中的文字并生成模板文件,然后将提取的文字和模板文件写入到数据库中,其界面设计如图11所示。
5)文档批量替换模块
文档批量提取模块提供文档批量替换的交互界面,包括替换语种的选择、目录结构树的查看、office文档的批量下载,主要用于将文件从数据库中写出,并可让office文档在原文和不同的译文之间任意切换,同时提供对文字内容的管理,其界面设计如图12所示。
本申请针对office文档的管理和批处理方法的流程,包括office文档的管理流程、文档结构化方法、文档内容批量提取和批量替换的方法等。
本申请对office文档管理数据库的设计,包括文档目录信息表,文件内容信息表,文件模板信息表,文件语言信息表,文件替换标识表等。
本申请的系统软件及用户交互界面的设计和功能,包括主界面、office文档管理模块、文档结构化、文档批量提取模块和文档批量替换模块的设计及功能等。
每个XML文档都由XML序言开始,在前面的代码中的第一行便是XML序言。这一行代码会告诉解析器和浏览器,这个文件应该按照前面讨论过的XML规则进行解析。第二行代码,则是文档元素(documentelement),它是文件中最外面的标签是起始标签和结束标签之间的内容。所有其他的标签必须包含在这个标签之内来组成一个有效的XML文件。XML文件的第二行并不一定要包含文档元素;如果有注释或者其他内容,文档元素可以迟些出现。页面再往下的一些地方,可以发现标签里有一些特殊的语法。代码用于表示无需进行解析的文本,允许诸如大于号和小于号之类的特殊字符包含在文本中,而无需担心破坏XML的语法。文本必须出现在之间才能合适地避免被解析。这样的文本称为Character DataSection,简称CDataSection。虽然很像XML序言,但实际上是一种称为处理指令(processinginstruction)的不同类型的语法。处理指令(以下简称PI)的目的是为了给处理页面的程序(例如XML解析器)提供额外的信息。PI通常情况下是没有固定格式的,唯一的要求是紧随第一个问号必须至少有一个字母。在此之后,PI可以包含除了小于号和大于号之外的任何字符串序列。
本申请首先根据office文档的目录结构和层级关系,提出了基于数据库的office文档结构化管理方法,解决大批量office文档管理不便的问题,从而提升office文档在批处理时的文件存取效率;其次,结合XML技术在文件批处理上的优势,提出了基于XML结构的office文档批量内容提取及替换技术,便捷实现对office文档进行文字提取和定位替换的功能,进一步提升office文档批处理效率;最后,将该技术流程封装为软件并提供用户交互界面,解决office文档批量内容提取和替换时不易实现,不易操作和管理的问题。
本申请提出了基于数据库的office文档结构化管理方法,解决大批量office文档操作异常、管理不便的问题,从而提升office文档在批处理时的文件存取效率;结合XML技术在文件批处理上的优势,提出了基于XML结构的office文档批量内容提取及替换技术,便捷实现对office文档进行文字提取和定位替换的功能,进一步提升office文档批处理效率。将该技术流程封装为软件并提供用户交互界面,解决office文档批量内容提取和替换时不易实现,不易操作和管理的问题。
尽管在上文中参考特定的实施例对本申请进行了描述,但是所属领域技术人员应当理解,在本申请公开的原理和范围内,可以针对本申请公开的配置和细节做出许多修改。本申请的保护范围由所附的权利要求来确定,并且权利要求意在涵盖权利要求中技术特征的等同物文字意义或范围所包含的全部修改。
Claims (10)
1.一种文档管理及操作方法,其特征在于:所述方法包括如下步骤:
步骤1:创建数据库进行文档管理;
步骤2:提取所述文档的可扩展标记语言结构进行格式化;
步骤3:通所述过格式化的可扩展标记语言定位进行文字批量提取并生成模板文件;
步骤4:将所述文字信息与所述模板重新组合进行文档批量替换。
2.如权利要求1所述的文档管理及操作方法,其特征在于:所述步骤1包括创建数据库,检验文件中的压缩包文件并解压,提取所有所述文件的目录层级关系并保存至所述数据库。
3.如权利要求1所述的文档管理及操作方法,其特征在于:所述数据库包括文档目录信息表,文件内容信息表,文件模板信息表,文件语言信息表和文件替换标识表。
4.如权利要求1~3中任一项所述的文档管理及操作方法,其特征在于:所述数据库为SQLite数据库。
5.如权利要求1所述的文档管理及操作方法,其特征在于:所述步骤2包括创建文档操作对象,合并标签结构,解析可扩展标记语言内容为可扩展标记语言文档对象模型对象,对所述可扩展标记语言文档对象模型对象进行操作,保存操作结果可扩展标记语言,并写回到文档中。
6.如权利要求1所述的文档管理及操作方法,其特征在于:所述步骤3包括在对文档的可扩展标记语言结构进行格式化之后,对所述文档内容进行提取,去重,保存至所述数据库,同时对所述文档的文件模板信息进行提取,并生成二进制流文件模板信息保存至所述数据库。
7.如权利要求6所述的文档管理及操作方法,其特征在于:所述步骤4包括将替换的文字内容保存到所述数据库中,从所述数据库中提取所述二进制流文件模板信息和所述替换的文字内容,将要所述文字信息与所述模板中相应位置一一对应进行批量组合,生成替换后的文档,实现文档内容的批量替换。
8.如权利要求7所述的文档管理及操作方法,其特征在于:所述模板采用查询文件模板方法从所述数据库中提取,采用二进制流转文件方法将所述二进制流模板文件转换为文档格式,并写入到临时文档文件中。
9.一种文档管理及操作系统,其特征在于:包括主界面单元,所述主界面单元包括菜单功能栏和交互界面,所述菜单功能栏与所述交互界面进行交互,所述菜单功能栏包括文档管理模块、文档结构化管理模块、文档批量提取模块和文档批量替换模块;
所述交互界面,用于展示交互内容;
所述文档管理模块,用于初始化数据库,文件解压缩,文件类型校验,生成文档的目录结构并保存至所述数据库中;
所述文档结构化管理模块,用于转换文档后缀格式同时格式化文档的扩展标记语言结构;
所述文档批量提取模块,用于提取文档中的文字并生成模板文件,然后将所述文字和所述模板文件写入到数据库中;
所述文档批量替换模块,用于将文件从数据库中写出,并可让文档在原文和不同的译文之间任意切换,同时提供对文字内容的管理。
10.如权利要求9所述的文档管理及操作系统,其特征在于:所述文档管理模块包括数据库子模块、文件压缩包及类型检验子模块和文件目录提取子模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011404621.8A CN112667563A (zh) | 2020-12-04 | 2020-12-04 | 一种文档管理及操作方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011404621.8A CN112667563A (zh) | 2020-12-04 | 2020-12-04 | 一种文档管理及操作方法和系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112667563A true CN112667563A (zh) | 2021-04-16 |
Family
ID=75400987
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011404621.8A Pending CN112667563A (zh) | 2020-12-04 | 2020-12-04 | 一种文档管理及操作方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112667563A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113268283A (zh) * | 2021-05-28 | 2021-08-17 | 深圳市蓬莱产业科技有限公司 | 一种基于卷宗材料批量处理的方法 |
CN113297425A (zh) * | 2021-06-22 | 2021-08-24 | 超凡知识产权服务股份有限公司 | 文档转换方法、装置、服务器及存储介质 |
CN113377950A (zh) * | 2021-06-02 | 2021-09-10 | 浪潮软件股份有限公司 | 一种实现非结构化文档扁平化存储及实时预览的方法 |
CN113761840A (zh) * | 2021-09-08 | 2021-12-07 | 中信建投证券股份有限公司 | 智能文档处理方法、系统、计算机设备及介质 |
CN113792042A (zh) * | 2021-08-10 | 2021-12-14 | 浪潮金融信息技术有限公司 | 一种表格分析数据集的配置方法、系统及介质 |
-
2020
- 2020-12-04 CN CN202011404621.8A patent/CN112667563A/zh active Pending
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113268283A (zh) * | 2021-05-28 | 2021-08-17 | 深圳市蓬莱产业科技有限公司 | 一种基于卷宗材料批量处理的方法 |
CN113377950A (zh) * | 2021-06-02 | 2021-09-10 | 浪潮软件股份有限公司 | 一种实现非结构化文档扁平化存储及实时预览的方法 |
CN113297425A (zh) * | 2021-06-22 | 2021-08-24 | 超凡知识产权服务股份有限公司 | 文档转换方法、装置、服务器及存储介质 |
CN113297425B (zh) * | 2021-06-22 | 2023-09-12 | 超凡知识产权服务股份有限公司 | 文档转换方法、装置、服务器及存储介质 |
CN113792042A (zh) * | 2021-08-10 | 2021-12-14 | 浪潮金融信息技术有限公司 | 一种表格分析数据集的配置方法、系统及介质 |
CN113792042B (zh) * | 2021-08-10 | 2023-09-15 | 浪潮金融信息技术有限公司 | 一种表格分析数据集的配置方法、系统及介质 |
CN113761840A (zh) * | 2021-09-08 | 2021-12-07 | 中信建投证券股份有限公司 | 智能文档处理方法、系统、计算机设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112667563A (zh) | 一种文档管理及操作方法和系统 | |
RU2358311C2 (ru) | Документ текстовой обработки, хранящийся в едином файле xml, которым могут манипулировать приложения, понимающие язык xml | |
US8683324B2 (en) | Dynamic generation of target files from template files and tracking of the processing of target files | |
US20040221233A1 (en) | Systems and methods for report design and generation | |
US20020147748A1 (en) | Extensible stylesheet designs using meta-tag information | |
EP1672528A2 (en) | File Formats, Methods, and Computer Program Products for Representing Workbooks | |
US20020002567A1 (en) | Method and system for managing documents | |
US20090019064A1 (en) | Document processing device and document processing method | |
US20080288239A1 (en) | Localization and internationalization of document resources | |
US6915303B2 (en) | Code generator system for digital libraries | |
EP1672526A2 (en) | File formats, methods, and computer program products for representing documents | |
US9817887B2 (en) | Universal text representation with import/export support for various document formats | |
US8423512B2 (en) | Leveraging XML capabilities of a database to enhance handling of document data | |
US20090083300A1 (en) | Document processing device and document processing method | |
CN112527291A (zh) | 网页生成方法、装置、电子设备及存储介质 | |
CN110765402A (zh) | 一种基于网络资源的可视化采集系统及采集方法 | |
EP1830274A1 (en) | Server device and name space issuing method | |
CN112199960A (zh) | 一种标准知识元粒度解析系统 | |
CN116303359A (zh) | 一种数据库结构多类型文档导出的实现方法 | |
US20090083620A1 (en) | Document processing device and document processing method | |
EP1377917A2 (en) | Extensible stylesheet designs using meta-tag information | |
CN117193781B (zh) | 一种面向simscript语言的抽象语法树构建方法和装置 | |
Tian et al. | Research and implementation of a desktop full-text search system based on Hyper Estraier | |
Batschi et al. | „SuperThes “: A New Software for Construction, Maintenance and Visualisation of Multilingual Thesauri | |
CN113935282A (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 |