掌桥专利:专业的专利平台
掌桥专利
首页

文档生成方法、装置、电子设备、及计算机可读存储介质

文献发布时间:2023-06-19 11:45:49


文档生成方法、装置、电子设备、及计算机可读存储介质

技术领域

本公开涉及金融技术领域,特别是涉及一种文档生成方法、装置、电子设备、及计算机可读存储介质。

背景技术

Markdown作为一种轻量级的标记语言,具有很好的可读性。在各种需要用户编辑输入的应用场景中,Markdown文档已经被广泛地使用。Markdown文档可以很方便地转换成html格式文档即网页文档以及pdf文档等各种更直观的格式文档,当然,有时候也会需要按照用户的实际需求将word文档、网页文档等具有更强的展现样式的格式文档转换为Markdown文档。

发明内容

本公开的一个方面提供了一种文档生成方法,包括:获取第一文件,其中,所述第一文件包括DSR文件;获取目标模板;基于所述目标模板,从所述第一文件中获取目标数据;以及将所述目标数据写入所述目标模板,以生成第二文件,其中,所述第二文件包括markdown文件。

可选地,基于所述目标模板,从所述第一文件中获取目标数据,包括:确定所述目标模板中定义的至少一个字段;基于所述至少一个字段,从所述第一文件中获取所述目标数据;所述方法还包括:在将所述目标数据写入所述目标模板之前,将从所述第一文件中获取的所述目标数据,按照字段与存储区之间的对应关系,存储于指定存储空间,其中,所述指定存储空间包括至少一个存储区,所述至少一个存储区与所述至少一个字段一一对应。

可选地,将所述目标数据写入所述目标模板,包括:将存储于所述指定存储空间中的所述目标数据,按照所述字段与存储区之间的对应关系,写入在所述目标模板上定义的各个字段中。

可选地,通过以下操作创建所述指定存储空间:创建与所述至少一个字段一一对应的所述至少一个存储区;以及将所述至少一个存储区定义为所述指定存储空间。

可选地,创建与所述至少一个字段一一对应的所述至少一个存储区,包括:针对所述至少一个字段中的第一类字段,创建至少一个第一存储区,其中,填写在所述第一类字段中的数据不需要进行数据转换;和/或针对所述至少一个字段中的第二类字段,创建至少一个第二存储区,其中,填写在所述第二类字段中的数据需要进行数据转换。

可选地,所述方法还包括:更新目标模板。

本公开的另一个方面提供了一种文档装置,包括:

第一文件获取模块,用于获取第一文件,其中,所述第一文件包括DSR文件;模板获取模块,用于获取目标模板;数据提取模块,用于基于所述目标模板,从所述第一文件中获取目标数据;以及第二文件获取模块,用于将所述目标数据写入所述目标模板,以生成第二文件,其中,所述第二文件包括markdown文件。

本公开的另一方面提供了一种电子设备,包括:一个或多个处理器;存储器,用于存储一个或多个程序,其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现本公开实施例的方法。

本公开的另一方面提供了一种计算机可读存储介质,存储有计算机可执行指令,所述指令在被执行时用于实现本公开实施例的方法。

本公开的另一方面提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现本公开实施例所述的方法。

附图说明

为了更完整地理解本公开及其优势,现在将参考结合附图的以下描述,其中:

图1示意性示出了根据本公开实施例的适于文档生成方法和装置的应用场景;

图2示意性示出了根据本公开实施例的文档生成方法的流程图;

图3示意性示出了根据本公开另一实施例的文档生成方法的流程图;

图4示意性示出了根据本公开又一实施例的文档生成方法的流程图;

图5示意性示出了根据本公开又一实施例的文档生成方法的流程图;

图6示意性示出了根据本公开实施例的文档生成方法的原理图;

图7示意性示出了根据本公开实施例的文档生成装置的框图;以及

图8示意性示出了根据本公开实施例的适于文档生成方法的电子设备的框图。

具体实施方式

以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细节以提供对本公开实施例的全面理解。然而,明显地,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。

在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。

在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。

在使用类似于“A、B和C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B和C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。

附图中示出了一些方框图和/或流程图。应理解,方框图和/或流程图中的一些方框或其组合可以由计算机程序指令来实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,从而这些指令在由该处理器执行时可以创建用于实现这些方框图和/或流程图中所说明的功能/操作的装置。本公开的技术可以硬件和/或软件(包括固件、微代码等)的形式来实现。另外,本公开的技术可以采取存储有指令的计算机可读存储介质上的计算机程序产品的形式,该计算机程序产品可供指令执行系统使用或者结合指令执行系统使用。

本公开的实施例提供了一种文档生成方法以及能够应用该方法的文档生成装置,包括:获取第一文件,其中,所述第一文件包括DSR文件;获取目标模板;基于所述目标模板,从所述第一文件中获取目标数据;以及将所述目标数据写入所述目标模板,以生成第二文件,其中,所述第二文件包括markdown文件。

图1示意性示出了根据本公开实施例的文档生成方法和文档生成装置的应用场景100。需要注意的是,图1所示仅为可以应用本公开实施例的场景的示例,以帮助本领域技术人员理解本公开的技术内容,但并不意味着本公开实施例不可以用于其他设备、系统、环境或场景。

如图1所示,根据该实施例的应用场景100可以包括本公开实施例的文档生成装置。

一般在需要生成第二文件时,会调用文档生成装置生成第二文件。其中,根据本公开的实施例,在调用文档生成装置110时,获取第一文件101,也要获取目标模板102。本公开中的第一文件101可以是后缀为.dsr格式的文件,在本公开中记载为DSR文件。文档生成装置110基于目标模板102从第一文件中获取目标数据103,再根据目标数据103生成第二文件104。本公开实施例中第二文件104可以为markdown文档。文档生成装置110可以具体实现为下文描述的文档生成装置700、或者电子设备800、或者计算机可读存储介质、或者计算机程序等。、

该文档生成装置110可以执行本公开实施例的文档生成方法,进行文档生成。首先获取第一文件101及目标模板102;然后基于目标模板102,从第一文件101中获取目标数据102;最后将目标数据102写入目标模板103,生成第二文件104。

根据本公开的实施例,生成的第二文件可以应用于国内市场或者海外市场。应用在国内市场的目标模板与应用在海外市场的目标模板不同。基于不同的目标模板提取出的目标数据也不同,进而采用不同目标数据生成的第二文件也不同。这样避免了海外市场采用国内市场的目标模板提取目标数据,进而避免生成的第二文件产生乱码。尤其可以防止markdown文件产生乱码。

根据本公开的实施例,基于目标模板生成markdown文件,简化开发写文档的流程,快速生成符合海外市场应用格式要求的markdown文档。

需要说明的是,本公开实施例的文档生成方法和文档生成装置可用于金融领域,也可用于除金融领域之外的任意领域,对此本公开不做限定。

图2示意性示出了根据本公开实施例的文档生成方法的流程图。

如图2所示,该方法包括操作S210~S240。

在操作S210,获取第一文件,其中,第一文件包括DSR文件。

在操作S220,获取目标模板。

在操作S230,基于目标模板,从第一文件中获取目标数据。

在操作S240,将目标数据写入目标模板,以生成第二文件,其中,第二文件包括markdown文件。

例如,在操作S210,可以从服务器主机中获取DSR文件。

例如,在操作S230可以采用Eclipse软件的jar包工具从DSR文件中提取目标数据。例如,采用jar包工具中的DsrReader从DSR文件中提取目标数据。

例如,在操作S240可以采用Eclipse软件的jar包工具将目标数据写入目标模板,生成第二文件。例如,采用jar包工具中的DsrTable将目标数据写入目标模板,然后通过MDFileWriter根据写入了目标数据的目标模板生成markdown文件。

根据本公开的实施例,根据目标模板提取目标数据,再将目标数据写入目标模板以生成的markdown文档,可以生成可用的、符合相应地区的规范的接口文档,避免出现模板不适应导致的接口文档出现乱码的情况。

下面参考图3结合具体实施例对图2所示的方法做进一步说明。

如图3所示,本公开另一实施例的文档生成方法中,操作S230可以包括操作S331和操作S332,操作S230和操作S240之间可以包括操作S333。

在操作S331,确定目标模板中定义的至少一个字段。

例如,目标模板中定义了“账户名”、“开户信息”等字段。

在操作S332,基于至少一个字段,从第一文件中获取目标数据。

例如,根据目标模板中定义的“账户名”字段,相应地从DSR文件中提取“账户名”对应的数据。同时或然后,根据目标模板中定义的其他字段,相应地从DSR文件中提取字段对应的数据。汇总这些数据即为目标数据。

在操作S333,将从第一文件中获取的目标数据,按照字段与存储区之间的对应关系,存储于指定存储空间,其中,指定存储空间包括至少一个存储区,至少一个存储区与至少一个字段一一对应。

例如,目标数据中包含“账户名”的数据,将“账户名”的数据存储到存储区内与“账户名”对应的指定存储空间。同时或然后,将目标数据中的其他字段,按照字段与存储区之间的对应关系,存储到指定存储空间。

下面参考图4结合具体实施例对图2所示的方法做进一步说明。

如图4所示,本公开另一实施例的文档生成方法中,操作S240可以包括操作S441和操作S442。

在操作S441,将存储于指定存储空间中的目标数据,按照字段与存储区之间的对应关系,写入在目标模板上定义的各个字段中。

例如,目标数据中包括“账户名”的数据,“账户名”的数据存储在指定存储空间,目标模板上定义的字段中包括“账户名”字段,按照字段与存储区之间的对应关系,写入在目标模板上定义的“账户名”字段中。同时或然后,将目标数据中的其他字段的数据,按照字段与存储区之间的对应关系,写入在目标模板上定义的其他字段中。

在操作S442,生成第二文件。

下面参考图5结合具体实施例对图2所示的方法做进一步说明。

如图5所示,本公开另一实施例的文档生成方法中,操作S333中的指定存储空间通过操作S531和操作S532实现,

在操作S531,创建与至少一个字段一一对应的至少一个存储区。

例如,创建与“账户名”字段对应的一个存储区,用于存储“账户名”字段的数据;创建与“开户信息”字段对应的另一存储区,用于存储“开户信息”字段的数据。

在操作S532,将至少一个存储区定义为指定存储空间。

在本公开的实施例中,操作S531创建与至少一个字段一一对应的至少一个存储区时,针对至少一个字段中的第一类字段,创建至少一个第一存储区,其中,填写在第一类字段中的数据不需要进行数据转换。

例如,将“账户余额”定义为第一类字段,将“开户信息”的数据写入目标模板时,不需要进行数据转换。

在本公开的实施例中,操作S531创建与至少一个字段一一对应的至少一个存储区时,针对至少一个字段中的第二类字段,创建至少一个第二存储区,其中,填写在第二类字段中的数据需要进行数据转换。

例如,将“账户名”定义为第二类字段,将“账户名”的数据写入目标模板时,需要进行数据转换。例如,“账户名”的数据为某某某ABC,某某某为汉语,ABC为相应的英文名;应用到海外市场时,应转换为ABC,以符合海外市场的要求;应用到国内市场时,应转换为某某某,以符合国内市场的要求。

在本公开的一实施例中,更新目标模板。

例如,某个字段出现的概率大幅提高,可以将该字段添加到目标模板定义的字段中,进而第二文件中也可以出现相应的字段及字段的数据。

图6示意性示出了根据本公开实施例的文档生成方法的原理图。

如图6所示,基于指定存储空间620中的至少一个存储区对应的字段从第一文件610中提取目标数据,第一文件610中具有相应字段、字段对应的数据以及其他字段。从第一文件610提取的目标数据分别存储入指定存储空间620的至少一个存储区,例如,分别存入存储区A 621和存储区B 622。然后将至少一个存储区内的数据写入到目标模板630中定义的至少一个字段中,例如,将存储区A 621的数据写入到目标模板630的字段A 631中,将存储区B622的数据写入到目标模板630的字段B 632中。然后根据目标模板630生成第二文件640。

如图6所示,基于目标模板630内定义的至少一个字段创建至少一个存储区,至少一个存储区与至少一个字段一一对应,指定存储空间由至少一个存储区构成。例如,基于字段A 631建立存储区A 621,基于字段B 632建立存储区B 622。

图7示意性示出了根据本公开实施例的文档生成装置的框图。

如图7所示,应用于文档生成的装置700包括第一文件获取模块710、模板获取模块720、数据提取模块730和第二文件获取模块740。该文档生成装置可以执行上面参考方法实施例部分描述的方法,在此不再赘述。

第一文件获取模块710,用于获取第一文件,其中,第一文件包括DSR文件;模板获取模块720,用于获取目标模板;数据提取模块730,用于基于目标模板,从第一文件中获取目标数据;以及第二文件获取模块740,用于将目标数据写入目标模板,以生成第二文件,其中,第二文件包括markdown文件。

在本公开实施例中,数据提取模块730可以包括:模板字段获取子模块和字段数据获取子模块。模板字段获取子模块,用于确定目标模板中定义的至少一个字段。字段数据获取子模块,用于基于至少一个字段,从第一文件中获取目标数据。

在本公开实施例中,文档生成装置除了可以包括第一文件获取模块710、模板获取模块720、数据提取模块730和第二文件获取模块740,数据提取模块730可以包括模板字段获取子模块和字段数据获取子模块,文档生成装置还可以包括字段数据存储模块。字段数据存储模块,用于将从第一文件中获取的目标数据,按照字段与存储区之间的对应关系,存储于指定存储空间,其中,指定存储空间包括至少一个存储区,至少一个存储区与至少一个字段一对应。

在本公开一实施例中,字段数据存储模块可以包括存储区创建子模块和指定存储空间定义子模块。存储区创建子模块,用于创建与至少一个字段一一对应的至少一个存储区。指定存储空间定义子模块,用于将至少一个存储区定义为指定存储空间。

在本公开一实施例中,存储区创建子模块可以包括第一存储区创建子单元,用于创建与至少一个字段一一对应的至少一个存储区时,针对至少一个字段中的第一类字段,创建至少一个第一存储区,其中,填写在第一类字段中的数据不需要进行数据转换。

在本公开一实施例中,存储区创建子模块可以包括第二存储区创建子单元,用于创建与至少一个字段一一对应的至少一个存储区时,针对至少一个字段中的第二类字段,创建至少一个第二存储区,其中,填写在第二类字段中的数据需要进行数据转换。

在本公开一实施例中,第二文件获取模块740可以包括模板写入子模块和文件生成子模块。模板写入子模块,用于将存储于指定存储空间中的目标数据,按照字段与存储区之间的对应关系,写入在目标模板上定义的各个字段中。文件生成子模块,用于生成第二文件。

在本公开一实施例中,文档生成装置除了可以包括第一文件获取模块710、模板获取模块720、数据提取模块730和第二文件获取模块740,还可以包括模板更新模块。模板更新模块,用于更新目标模板。

需要说明的是,装置部分的实施例方式与方法部分的实施例方式对应类似,并且所达到的技术效果也对应类似,在此不再赘述。

根据本公开的实施例的模块、单元中的任意多个、或其中任意多个的至少部分功能可以在一个模块中实现。根据本公开实施例的模块、单元中的任意一个或多个可以被拆分成多个模块来实现。根据本公开实施例的模块、单元中的任意一个或多个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式的硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,根据本公开实施例的模块、单元中的一个或多个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。

例如,第一文件获取模块710、模板获取模块720、数据提取模块730和第二文件获取模块740中的任意多个可以合并在一个模块中实现,或者其中的任意一个模块可以被拆分成多个模块。或者,这些模块中的一个或多个模块的至少部分功能可以与其他模块的至少部分功能相结合,并在一个模块中实现。根据本公开的实施例,第一文件获取模块710、模板获取模块720、数据提取模块730和第二文件获取模块740中的至少一个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式等硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,第一文件获取模块710、模板获取模块720、数据提取模块730和第二文件获取模块740中的至少一个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。

图8示意性示出了根据本公开实施例的电子设备的框图。图8示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。

如图8所示,电子设备800包括处理器810、计算机可读存储介质820。该电子设备800可以执行根据本公开实施例的方法。

例如,处理器810例如可以包括通用微处理器、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(ASIC)),等等。处理器810还可以包括用于缓存用途的板载存储器。处理器810可以是用于执行根据本公开实施例的方法流程的不同动作的单一处理单元或者是多个处理单元。

计算机可读存储介质820,例如可以是非易失性的计算机可读存储介质,具体示例包括但不限于:磁存储装置,如磁带或硬盘(HDD);光存储装置,如光盘(CD-ROM);存储器,如随机存取存储器(RAM)或闪存;等等。

计算机可读存储介质820可以包括计算机程序821,该计算机程序821可以包括代码/计算机可执行指令,其在由处理器810执行时使得处理器810执行根据本公开实施例的方法或其任何变形。

计算机程序821可被配置为具有例如包括计算机程序模块的计算机程序代码。例如,在示例实施例中,计算机程序821中的代码可以包括一个或多个程序模块,例如包括模块821A、模块821B、……。应当注意,模块的划分方式和个数并不是固定的,本领域技术人员可以根据实际情况使用合适的程序模块或程序模块组合,当这些程序模块组合被处理器810执行时,使得处理器810可以执行根据本公开实施例的方法或其任何变形。

根据本公开的实施例,第一文件获取模块710、模板获取模块720、数据提取模块730和第二文件获取模块740中的至少一个可以实现为参考图8描述的计算机程序模块,其在被处理器810执行时,可以实现上面描述的相应操作。

本公开还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的设备/装置/系统中所包含的;也可以是单独存在,而未装配入该设备/装置/系统中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被执行时,实现根据本公开实施例的方法。

附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

本领域技术人员可以理解,尽管已经参照本公开的特定示例性实施例示出并描述了本公开,但是本领域技术人员应该理解,在不背离所附权利要求及其等同物限定的本公开的精神和范围的情况下,可以对本公开进行形式和细节上的多种改变。因此,本公开的范围不应该限于上述实施例,而是应该不仅由所附权利要求来进行确定,还由所附权利要求的等同物来进行限定。

相关技术
  • 文档生成方法、装置、电子设备、及计算机可读存储介质
  • 文档生成方法、装置、计算机可读介质及电子设备
技术分类

06120113046982