1.本发明涉及数据处理技术领域,尤其涉及一种文件生成方法、装置、电子设备和存储介质。
背景技术:2.随着科技的迅速发展,人们对文件的智能化需求越来越高。在人们日常生活工作中,需要生成各种各样的文件。例如,公司需要与多个客户签订文件,基于此,需要制定包括客户定制条款的合同、协议等文件。
3.目前,文件生成大多依靠人工录入,不仅费时费力,还容易生成错误文件。
技术实现要素:4.本发明提供一种文件生成方法、装置、电子设备和存储介质,用以解决现有技术中人工生成文件效率低且易出错的缺陷。
5.本发明提供一种文件生成方法,包括:
6.获取待生成文件对应的文本模板,并获取所述待生成文件对应的占位符-数据映射关系;
7.基于所述占位符-数据映射关系,将所述文本模板中的占位符替换成目标数据,以得到所述待生成文件;
8.其中,所述占位符-数据映射关系包括文本占位符-文本数据映射关系和表格占位符-表格数据映射关系;
9.所述文本占位符-文本数据映射关系用于表征文本占位符对应的文本数据;
10.所述表格占位符-表格数据映射关系用于表征表格占位符对应的表格数据,所述表格数据包括表格及其格中的文本数据。
11.根据本发明提供的一种文件生成方法,所述基于所述占位符-数据映射关系,将所述文本模板中的占位符替换成目标数据,包括:
12.确定所述文本模板中存在属于文本占位符的第一占位符,基于所述文本占位符-文本数据映射关系,将所述第一占位符替换成第一目标文本数据;
13.确定所述文本模板中存在属于表格占位符的第二占位符,基于所述表格占位符-表格数据映射关系,将所述第二占位符替换成目标表格数据。
14.根据本发明提供的一种文件生成方法,所述基于所述表格占位符-表格数据映射关系,将所述第二占位符替换成目标表格数据,包括:
15.基于所述表格占位符-表格数据映射关系,从表格模板中获取所述第二占位符对应的目标表格;
16.将所述第二占位符替换成所述目标表格对应的目标表格数据;
17.其中,所述目标表格为动态表格,所述动态表格为多个文件均包括的表格。
18.根据本发明提供的一种文件生成方法,所述将所述第二占位符替换成所述目标表
格对应的目标表格数据,包括:
19.将所述第二占位符替换成所述目标表格;
20.确定所述文本模板中的目标表格中存在属于文本占位符的第四占位符,基于所述文本占位符-文本数据映射关系,将所述第四占位符替换成第三目标文本数据,以将所述文本模板中的目标表格替换成目标表格数据。
21.根据本发明提供的一种文件生成方法,所述表格模板基于如下步骤确定:
22.获取所述待生成文件对应的样本文件;
23.确定所述样本文件中存在所述动态表格,将所述动态表格从所述样本文件提取至表格模板;
24.确定所述表格模板的动态表格中的第一动态文本数据,基于文本数据-文本占位符映射关系,将所述第一动态文本数据替换成第一目标占位符,所述第一动态文本数据为动态变化的变量。
25.根据本发明提供的一种文件生成方法,所述文本模板基于如下步骤确定:
26.获取所述待生成文件对应的样本文件;
27.确定所述样本文件中的第二动态文本数据,基于文本数据-文本占位符映射关系,将所述第二动态文本数据替换成第二目标占位符,以得到所述文本模板,所述第二动态文本数据为动态变化的变量。
28.根据本发明提供的一种文件生成方法,所述获取所述待生成文件对应的样本文件,之后还包括:
29.确定所述样本文件中存在动态表格,将所述动态表格替换成表格占位符,所述动态表格为多个文件均包括的表格。
30.本发明还提供一种文件生成装置,包括:
31.获取模块,用于获取待生成文件对应的文本模板,并获取所述待生成文件对应的占位符-数据映射关系;
32.替换模块,用于基于所述占位符-数据映射关系,将所述文本模板中的占位符替换成目标数据,以得到所述待生成文件;
33.其中,所述占位符-数据映射关系包括文本占位符-文本数据映射关系和表格占位符-表格数据映射关系;
34.所述文本占位符-文本数据映射关系用于表征文本占位符对应的文本数据;
35.所述表格占位符-表格数据映射关系用于表征表格占位符对应的表格数据,所述表格数据包括表格及其格中的文本数据。
36.本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述文件生成方法。
37.本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述文件生成方法。
38.本发明提供的文件生成方法、装置、电子设备和存储介质,获取待生成文件对应的文本模板,并获取待生成文件对应的占位符-数据映射关系;基于占位符-数据映射关系,将文本模板中的占位符替换成目标数据,以得到待生成文件。通过上述方式,通过占位符-数
据映射关系,将文本模板中的占位符替换成目标数据,从而得到待生成文件,无需依靠人工录入,自动生成文件,从而提高文件生成的高效性和便捷性,且是基于占位符-数据映射关系替换占位符,提高了文件生成的准确性;同时,占位符-数据映射关系包括文本占位符-文本数据映射关系和表格占位符-表格数据映射关系,从而可以将文本模板中的文本占位符替换成文本数据,还可以将文本模板中的表格占位符替换成表格数据,进而可以生成包括文本和表格的文件,提高了文本生成的灵活性。综上,本发明可以实现高效、便捷、灵活的文件生成方式。
附图说明
39.为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
40.图1为本发明提供的文件生成方法的流程示意图之一;
41.图2为本发明提供的文件生成方法的流程示意图之二;
42.图3为本发明提供的文件生成装置的结构示意图;
43.图4为本发明提供的电子设备的结构示意图。
具体实施方式
44.为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
45.随着科技的迅速发展,人们对文件的智能化需求越来越高。在人们日常生活工作中,需要生成各种各样的文件。例如,公司需要与多个客户签订文件,基于此,需要制定包括客户定制条款的合同、协议等文件。
46.目前,文件生成大多依靠人工录入,不仅费时费力,还容易生成错误文件。因此,如何高效且准确地生成文件,是目前亟需解决的问题。例如,如何高效且准确地生成各种定制化条款对应的合同文件或协议文件。
47.针对上述问题,本发明提出以下各实施例。本发明实施例提供的文件生成方法的执行主体可以为服务器、台式电脑、笔记本电脑、智能手机、平板电脑等终端,本发明实施例对此不作具体限定。
48.图1为本发明提供的文件生成方法的流程示意图之一,如图1所示,该文件生成方法包括:
49.步骤110,获取待生成文件对应的文本模板,并获取所述待生成文件对应的占位符-数据映射关系。
50.此处,待生成文件为待生成的目标文件,该待生成文件可以包括文本(如文字、字母、数字、符号等等)、表格、图片、文件路径、链接等等。
51.在本发明实施例中,以待生成文件为word文件为例进行说明,相应地,文本模板、
表格模板等也为word模板。
52.此处,文本模板中包括至少一个文本占位符,该文本占位符用于获取对应的文本数据。
53.在一实施例中,该文本模板还可以包括至少一个表格占位符,该表格占位符用于获取对应的表格数据,该表格数据包括表格及其格中的文本数据。在一实施例中,该文本模板还可以包括表格,该表格中可以包括文本占位符。
54.在一实施例中,该文本模板还可以包括图片占位符,该图片占位符用于获取对应的图片数据。在一实施例中,该文本模板还可以包括图片。
55.在一实施例中,该文本模板还可以包括文件路径占位符,该文件路径占位符用于获取对应的文件路径数据。在一实施例中,该文本模板还可以包括文件路径。
56.该文本模板是根据一样本文件生成的,该样本文件对应一种文件类型,基于此,可以基于待生成文件的文件类型,确定对应的文本模板。例如,待生成文件为玉米农作物的销售合同,则对应的文本模板也为玉米农作物的销售合同对应的文本模板。具体地,从多个文本模板中获取待生成文件对应的文本模板。
57.此处,占位符-数据映射关系用于表征文本模板中各占位符对应的目标数据,以将文本模板中各占位符替换成对应的目标数据。
58.其中,所述占位符-数据映射关系包括文本占位符-文本数据映射关系和表格占位符-表格数据映射关系;
59.所述文本占位符-文本数据映射关系用于表征文本占位符对应的文本数据;
60.所述表格占位符-表格数据映射关系用于表征表格占位符对应的表格数据,所述表格数据包括表格及其格中的文本数据。
61.此处,文本占位符-文本数据映射关系用于将文本模板中的文本占位符替换成对应的目标文本数据。具体地,可以将文本模板中独立的文本占位符替换成对应的目标文本数据,也可以将文本模板的表格中的文本占位符替换成对应的目标文本数据。
62.此处,表格占位符-表格数据映射关系用于将文本模板中的表格占位符替换成对应的目标表格数据。具体地,将文本模板中的表格占位符替换成表格,且该表格中包括文本数据。
63.在一实施例中,表格占位符-表格数据映射关系可以用于获取表格占位符对应的表格,或者直接用于获取表格占位符对应的表格数据,即直接用于获取包括文本数据的表格。
64.在一实施例中,该占位符-数据映射关系还可以包括图片占位符-图片数据映射关系,该图片占位符-图片数据映射关系用于表征图片占位符对应的图片数据。该图片占位符-图片数据映射关系用于将文本模板中的图片占位符替换成对应的目标图片数据。
65.在一实施例中,该占位符-数据映射关系还可以包括文件路径占位符-文件路径数据映射关系,该文件路径占位符-文件路径数据映射关系用于表征文件路径占位符对应的文件路径数据。该文件路径占位符-文件路径数据映射关系用于将文本模板中的文件路径占位符替换成对应的目标文件路径数据。
66.在一些实施例中,占位符-数据映射关系通过键值对进行表征。例如,通过map数据结构表征占位符-数据映射关系,即通过map数据结构存储占位符及其对应的数据,也就是
说,将占位符作为键(key),将对应的数据作为值(value)。例如,从数据库或其他存储位置将文本占位符对应的真实数据收集到内存中,以存储在map数据类型变量中。
67.在一实施例中,在上述步骤110之前,加载文本模板。具体地,根据配置文件加载文本模板。
68.步骤120,基于所述占位符-数据映射关系,将所述文本模板中的占位符替换成目标数据,以得到所述待生成文件。
69.具体地,基于文本占位符-文本数据映射关系,将文本模板中的文本占位符替换成第一目标文本数据;基于表格占位符-表格数据映射关系,将文本模板中的表格占位符替换成目标表格数据;基于文本占位符-文本数据映射关系,将文本模板中的第一表格中的第三占位符替换成第二目标文本数据;基于图片占位符-图片数据映射关系,将文本模板中的图片占位符替换成目标图片数据;基于文件路径占位符-文件路径数据映射关系,将文本模板中的文件路径占位符替换成目标文件路径数据。
70.此处,文本模板包括至少一个占位符,基于占位符-数据映射关系,将文本模板中的所有占位符均进行替换,直至文本模板中不存在占位符,此时,将该替换后的文本模板作为待生成文件。
71.在一实施例中,占位符可以通过${param}进行表征,其中,变量param表示具体的占位符,例如,${goods}表示商品名的文本占位符。
72.在一实施例中,通过遍历文本模板的段落、行的方式,找到占位符,然后,再从占位符-数据映射关系中找到占位符对应的目标数据,从而将占位符替换成目标数据。
73.例如,通过遍历文本模板的段落、行的方式,找到占位符,即找到键(key),然后,再从占位符-数据映射关系对应的map中找到key对应的目标数据(value),从而将占位符替换成目标数据(value)。
74.在一实施例中,在上述步骤120之后,将待生成文件进行关闭,以确保待生成文件的所有数据均保存完毕。
75.本发明实施例提供的文件生成方法,获取待生成文件对应的文本模板,并获取待生成文件对应的占位符-数据映射关系;基于占位符-数据映射关系,将文本模板中的占位符替换成目标数据,以得到待生成文件。通过上述方式,通过占位符-数据映射关系,将文本模板中的占位符替换成目标数据,从而得到待生成文件,无需依靠人工录入,自动生成文件,从而提高文件生成的高效性和便捷性,且是基于占位符-数据映射关系替换占位符,提高了文件生成的准确性;同时,占位符-数据映射关系包括文本占位符-文本数据映射关系和表格占位符-表格数据映射关系,从而可以将文本模板中的文本占位符替换成文本数据,还可以将文本模板中的表格占位符替换成表格数据,进而可以生成包括文本和表格的文件,提高了文本生成的灵活性。综上,本发明实施例可以实现高效、便捷、灵活的文件生成方式。
76.基于上述实施例,图2为本发明提供的文件生成方法的流程示意图之二,如图2所示,上述步骤120中,基于所述占位符-数据映射关系,将所述文本模板中的占位符替换成目标数据,包括:
77.步骤121,确定所述文本模板中存在属于文本占位符的第一占位符,基于所述文本占位符-文本数据映射关系,将所述第一占位符替换成第一目标文本数据。
78.此处,第一占位符为文本占位符,其用于获取对应的文本数据。在确定文本模板中存在属于文本占位符的第一占位符时,文本模板包括至少一个第一占位符。
79.具体地,基于文本占位符-文本数据映射关系,将文本模板中的所有第一占位符均进行替换,直至文本模板中不存在第一占位符。
80.在一实施例中,通过遍历文本模板的段落、行的方式,找到第一占位符,然后,再从文本占位符-文本数据映射关系中找到第一占位符对应的目标文本数据,从而将第一占位符替换成目标文本数据。
81.此处,第一目标文本数据用于在待生成文件中生成文本,该第一目标文本数据可以包括但不限于:文字、字母、数字、符号等等。
82.步骤122,确定所述文本模板中存在属于表格占位符的第二占位符,基于所述表格占位符-表格数据映射关系,将所述第二占位符替换成目标表格数据。
83.此处,第二占位符为表格占位符,其用于获取对应的表格数据。在确定文本模板中存在属于表格占位符的第二占位符时,文本模板包括至少一个第二占位符。
84.具体地,基于表格占位符-表格数据映射关系,将文本模板中的所有第二占位符均进行替换,直至文本模板中不存在第二占位符。
85.在一实施例中,通过遍历文本模板的段落、行的方式,找到第二占位符,然后,再从表格占位符-表格数据映射关系中找到第二占位符对应的目标表格数据,从而将第二占位符替换成目标表格数据。更为具体地,以遍历表格占位符的方式,找到第二占位符。
86.此处,目标表格数据用于在待生成文件中生成表格,该目标表格数据包括表格及其格中的文本数据,格中的文本数据可以包括但不限于:文字、字母、数字、符号等等。
87.进一步地,确定所述文本模板中存在第一表格,基于所述文本占位符-文本数据映射关系,将所述第一表格中的第三占位符替换成第二目标文本数据,所述第三占位符属于文本占位符。
88.此处,第三占位符为文本占位符,且该第三占位符为表格中的文本占位符,其用于获取对应的文本数据,以填充表格内容。在确定文本模板中存在属于文本占位符的第三占位符时,文本模板包括至少一个第三占位符。
89.具体地,基于文本占位符-文本数据映射关系,将文本模板中的所有第三占位符均进行替换,直至文本模板中不存在第三占位符。
90.在一实施例中,通过遍历文本模板的段落、行的方式,找到第三占位符,然后,再从文本占位符-文本数据映射关系中找到第三占位符对应的目标文本数据,从而将第三占位符替换成目标文本数据。
91.此处,第二目标文本数据用于在待生成文件的表格中生成文本,该第二目标文本数据可以包括但不限于:文字、字母、数字、符号等等。
92.可以理解的是,本发明不仅可以通过替换表格占位符生成对应的表格数据,还可以通过替换表格中的文本占位符,得到对应的表格数据。
93.进一步地,确定所述文本模板中存在属于图片占位符的第五占位符,基于图片占位符-图片数据映射关系,将文本模板中的第五占位符替换成目标图片数据。
94.进一步地,确定所述文本模板中存在属于文件路径占位符的第六占位符,基于文件路径占位符-文件路径数据映射关系,将文本模板中的第六占位符替换成目标文件路径
数据。
95.本发明实施例提供的文件生成方法,通过上述方式,可以将文本模板中的文本占位符替换成文本数据,还可以将文本模板中的表格占位符替换成表格数据,进而可以生成包括文本和表格的文件,提高了文本生成的灵活性;同时,生成包括表格的文件有两种方式,一种为替换表格占位符,另一种为替换表格中的文本占位符,从而进一步提高文本生成的灵活性。
96.基于上述任一实施例,该方法中,上述步骤122中,基于所述表格占位符-表格数据映射关系,将所述第二占位符替换成目标表格数据,包括:
97.基于所述表格占位符-表格数据映射关系,从表格模板中获取所述第二占位符对应的目标表格;
98.将所述第二占位符替换成所述目标表格对应的目标表格数据;
99.其中,所述目标表格为动态表格,所述动态表格为多个文件均包括的表格。
100.此处,表格模板包括动态表格,其用于放置动态表格,即同一表格可以在不同文件中存在,或者在不同文件有不同的位置,或者在一文件中不确定有多少个,此时,可以将该表格确定为动态表格,并将该动态表格提取至另一个单独的文件,得到表格模板。
101.此处,获取到目标表格后,仅仅得知目标表格的表格类型和表格在文本模板中的放置位置,目标表格中的内容并不得知。
102.此处,目标表格对应的目标表格数据包括该目标表格和目标表格的格中的文本数据。
103.具体地,如何将第二占位符替换成目标表格数据,有如下两种实施例:
104.在一实施例中,将第二占位符替换成目标表格;确定文本模板中的目标表格中存在属于文本占位符的第四占位符,基于文本占位符-文本数据映射关系,将第四占位符替换成第三目标文本数据,以将文本模板中的目标表格替换成目标表格数据。
105.此处,先将第二占位符替换成目标表格,再替换目标表格中的文本占位符,从而实现将第二占位符替换成目标表格数据。
106.在另一实施例中,确定表格模板中的目标表格中存在属于文本占位符的第四占位符,基于文本占位符-文本数据映射关系,将表格模板中的第四占位符替换成第三目标文本数据,以得到目标表格数据;将第二占位符替换成目标表格数据。
107.此处,先将表格模板中的第四占位符替换成目标文本数据,即先替换目标表格中的文本占位符,以得到目标表格数据,再将第二占位符替换成目标表格数据。
108.在一实施例中,可以根据实际的表格格式,对目标表格数据进行行合并处理和列合并处理。
109.在一实施例中,在上述基于所述表格占位符-表格数据映射关系,从表格模板中获取所述第二占位符对应的目标表格的步骤之前,加载表格模板。具体地,根据配置文件加载表格模板。
110.本发明实施例提供的文件生成方法,通过上述方式,为表格占位符的替换方式提供支持,从而可以将文本模板中的表格占位符替换成表格数据。
111.基于上述任一实施例,该方法中,所述将所述第二占位符替换成所述目标表格对应的目标表格数据,包括:
112.将所述第二占位符替换成所述目标表格;
113.确定所述文本模板中的目标表格中存在属于文本占位符的第四占位符,基于所述文本占位符-文本数据映射关系,将所述第四占位符替换成第三目标文本数据,以将所述文本模板中的目标表格替换成目标表格数据。
114.此处,第四占位符为文本占位符,且该第四占位符为表格中的文本占位符,其用于获取对应的文本数据,以填充表格内容。在确定文本模板中的目标表格中存在属于文本占位符的第四占位符时,文本模板中的目标表格包括至少一个第四占位符。
115.具体地,基于文本占位符-文本数据映射关系,将文本模板中的目标表格中的所有第四占位符均进行替换,直至文本模板中的目标表格中不存在第四占位符。
116.在一实施例中,通过遍历文本模板中的目标表格的行、列的方式,找到第四占位符,然后,再从文本占位符-文本数据映射关系中找到第四占位符对应的目标文本数据,从而将第四占位符替换成目标文本数据。
117.此处,第三目标文本数据用于在文本模板中的目标表格的表格中生成文本,该第三目标文本数据可以包括但不限于:文字、字母、数字、符号等等。
118.本发明实施例提供的文件生成方法,通过上述方式,为表格占位符的替换方式提供支持,从而可以将文本模板中的表格占位符替换成表格数据。
119.基于上述任一实施例,该方法中,所述表格模板基于如下步骤确定:
120.获取所述待生成文件对应的样本文件;
121.确定所述样本文件中存在所述动态表格,将所述动态表格从所述样本文件提取至表格模板;
122.确定所述表格模板的动态表格中的第一动态文本数据,基于文本数据-文本占位符映射关系,将所述第一动态文本数据替换成第一目标占位符,所述第一动态文本数据为动态变化的变量。
123.此处,样本文件为包括完整数据的文件,该样本文件可以包括文本(如文字、字母、数字、符号等等)、表格、图片、文件路径、链接等等。
124.此处,动态表格可以在不同文件中存在,或者在不同文件有不同的位置,或者在一文件中不确定有多少个,因此,需要将动态表格提取至表格模板。
125.需要说明的是,若表格只存在该样本文件中,则可以不用提取至表格模板,直接将表格中的文本数据替换成文本占位符即可。
126.此处,表格模板用于放置至少一个动态表格,以供后续生成待生成文件时,可以从该表格模板中获取对应的表格及其表格中的文本数据。
127.此处,第一动态文本数据为动态变化的变量,例如,甲方公司名、乙方公司名、法定代表人、住所、联系电话、身份证号码、邮编、项目名、商品名、药品成分、施用量、防治对象、品种名称、种植密度、作业环节、作业内容、作业次数、单次作业面积等等。
128.此处,文本数据-文本占位符映射关系用于将第一动态文本数据替换为文本占位符。例如,样本文件中存在“xxx公司”,则“xxx公司”为第一动态文本数据,此时可以将“xxx公司”替换成${firstparty}。
129.此处,第一目标占位符为文本占位符,其用于表征该第一动态文本数据,以供后续基于第一目标占位符获取对应的文本数据。
130.在一实施例中,在确定所述表格模板的动态表格中的第一动态文本数据,基于文本数据-文本占位符映射关系,将所述第一动态文本数据替换成第一目标占位符的步骤之前,将动态表格的合并项全部释放,以确保不能有单元格合并的情况。
131.在一实施例中,在表格模板已确定完毕,重新打开该表格模板,以确保填充的表格都已经在表格模板中。
132.本发明实施例提供的文件生成方法,通过上述方式,将样本文件中的动态表格提取至表格模板,并将动态表格中的动态文本数据替换成文本占位符,以供后续可以通过表格模板获取对应的表格,并获取表格内的文本数据,进而可以生成包括文本和表格的文件,提高了文本生成的灵活性。
133.基于上述任一实施例,该方法中,所述文本模板基于如下步骤确定:
134.获取所述待生成文件对应的样本文件;
135.确定所述样本文件中的第二动态文本数据,基于文本数据-文本占位符映射关系,将所述第二动态文本数据替换成第二目标占位符,以得到所述文本模板,所述第二动态文本数据为动态变化的变量。
136.此处,样本文件为包括完整数据的文件,该样本文件可以包括文本(如文字、字母、数字、符号等等)、表格、图片、文件路径、链接等等。
137.此处,第二动态文本数据为动态变化的变量,例如,甲方公司名、乙方公司名、法定代表人、住所、联系电话、身份证号码、邮编、项目名、商品名、药品成分、施用量、防治对象、品种名称、种植密度、作业环节、作业内容、作业次数、单次作业面积等等。
138.此处,文本数据-文本占位符映射关系用于将第二动态文本数据替换为文本占位符。例如,样本文件中存在“甲方:xxx公司”,则“xxx公司”为第二动态文本数据,此时可以将“xxx公司”替换成${firstparty}。
139.此处,第二目标占位符为文本占位符,其用于表征该第二动态文本数据,以供后续基于第二目标占位符获取对应的文本数据。
140.在一实施例中,在文本模板已替换完毕,重新打开该文本模板,以便后续基于文本模板生成文件,即便于后续数据写入。
141.本发明实施例提供的文件生成方法,通过上述方式,将样本文件中的动态文本数据替换成文本占位符,以供后续可以通过文本占位符获取对应的文本数据,从而可以将文本模板中的文本占位符替换成文本数据,进而可以生成包括文本的文件,提高了文本生成的灵活性。
142.基于上述任一实施例,该方法中,所述获取所述待生成文件对应的样本文件,之后还包括:
143.确定所述样本文件中存在动态表格,将所述动态表格替换成表格占位符,所述动态表格为多个文件均包括的表格。
144.此处,动态表格可以在不同文件中存在,或者在不同文件有不同的位置,或者在一文件中不确定有多少个,因此,需要将动态表格替换成表格占位符。
145.具体地,基于动态表格-占位符映射关系,将动态表格替换成表格占位符。该动态表格-占位符映射关系是根据真实数据确定的,即基于真实数据分析文本模板中哪个位置用于放置表格占位符,即该表格占位符可以表示文件中某个位置某个特定的表格。
146.本发明实施例提供的文件生成方法,通过上述方式,将样本文件中的动态表格替换成表格占位符,以使后续可以通过表格占位符获取对应的表格,从而可以将文本模板中的表格占位符替换成表格数据,进而可以生成包括表格的文件,提高了文本生成的灵活性。
147.下面对本发明提供的文件生成装置进行描述,下文描述的文件生成装置与上文描述的文件生成方法可相互对应参照。
148.图3为本发明提供的文件生成装置的结构示意图,如图3所示,该文件生成装置,包括:
149.获取模块310,用于获取待生成文件对应的文本模板,并获取所述待生成文件对应的占位符-数据映射关系;
150.替换模块320,用于基于所述占位符-数据映射关系,将所述文本模板中的占位符替换成目标数据,以得到所述待生成文件;
151.其中,所述占位符-数据映射关系包括文本占位符-文本数据映射关系和表格占位符-表格数据映射关系;
152.所述文本占位符-文本数据映射关系用于表征文本占位符对应的文本数据;
153.所述表格占位符-表格数据映射关系用于表征表格占位符对应的表格数据,所述表格数据包括表格及其格中的文本数据。
154.本发明实施例提供的文件生成装置,获取待生成文件对应的文本模板,并获取待生成文件对应的占位符-数据映射关系;基于占位符-数据映射关系,将文本模板中的占位符替换成目标数据,以得到待生成文件。通过上述方式,通过占位符-数据映射关系,将文本模板中的占位符替换成目标数据,从而得到待生成文件,无需依靠人工录入,自动生成文件,从而提高文件生成的高效性和便捷性,且是基于占位符-数据映射关系替换占位符,提高了文件生成的准确性;同时,占位符-数据映射关系包括文本占位符-文本数据映射关系和表格占位符-表格数据映射关系,从而可以将文本模板中的文本占位符替换成文本数据,还可以将文本模板中的表格占位符替换成表格数据,进而可以生成包括文本和表格的文件,提高了文本生成的灵活性。综上,本发明实施例可以实现高效、便捷、灵活的文件生成方式。
155.基于上述任一实施例,该替换模块320包括:
156.第一替换单元,用于确定所述文本模板中存在属于文本占位符的第一占位符,基于所述文本占位符-文本数据映射关系,将所述第一占位符替换成第一目标文本数据;
157.第二替换单元,用于确定所述文本模板中存在属于表格占位符的第二占位符,基于所述表格占位符-表格数据映射关系,将所述第二占位符替换成目标表格数据。
158.基于上述任一实施例,该第二替换单元还用于:
159.基于所述表格占位符-表格数据映射关系,从表格模板中获取所述第二占位符对应的目标表格;
160.将所述第二占位符替换成所述目标表格对应的目标表格数据;
161.其中,所述目标表格为动态表格,所述动态表格为多个文件均包括的表格。
162.基于上述任一实施例,该第二替换单元还用于:
163.将所述第二占位符替换成所述目标表格;
164.确定所述文本模板中的目标表格中存在属于文本占位符的第四占位符,基于所述
文本占位符-文本数据映射关系,将所述第四占位符替换成第三目标文本数据,以将所述文本模板中的目标表格替换成目标表格数据。
165.基于上述任一实施例,该装置还包括:
166.文件获取模块,用于获取所述待生成文件对应的样本文件;
167.表格提取模块,用于确定所述样本文件中存在所述动态表格,将所述动态表格从所述样本文件提取至表格模板;
168.数据替换模块,用于确定所述表格模板的动态表格中的第一动态文本数据,基于文本数据-文本占位符映射关系,将所述第一动态文本数据替换成第一目标占位符,所述第一动态文本数据为动态变化的变量。
169.基于上述任一实施例,该装置还包括:
170.文件获取模块,用于获取所述待生成文件对应的样本文件;
171.数据替换模块,还用于确定所述样本文件中的第二动态文本数据,基于文本数据-文本占位符映射关系,将所述第二动态文本数据替换成第二目标占位符,以得到所述文本模板,所述第二动态文本数据为动态变化的变量。
172.基于上述任一实施例,该装置还包括:
173.表格替换模块,用于确定所述样本文件中存在动态表格,将所述动态表格替换成表格占位符,所述动态表格为多个文件均包括的表格。
174.图4示例了一种电子设备的实体结构示意图,如图4所示,该电子设备可以包括:处理器(processor)410、通信接口(communications interface)420、存储器(memory)430和通信总线440,其中,处理器410,通信接口420,存储器430通过通信总线440完成相互间的通信。处理器410可以调用存储器430中的逻辑指令,以执行文件生成方法,该方法包括:获取待生成文件对应的文本模板,并获取所述待生成文件对应的占位符-数据映射关系;基于所述占位符-数据映射关系,将所述文本模板中的占位符替换成目标数据,以得到所述待生成文件;其中,所述占位符-数据映射关系包括文本占位符-文本数据映射关系和表格占位符-表格数据映射关系;所述文本占位符-文本数据映射关系用于表征文本占位符对应的文本数据;所述表格占位符-表格数据映射关系用于表征表格占位符对应的表格数据,所述表格数据包括表格及其格中的文本数据。
175.此外,上述的存储器430中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
176.另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法所提供的文件生成方法,该方法包括:获取待生成文件对应的文本模板,并获取所述待生成文件对应的占位符-数据映射关系;基于所述占位符-数据
映射关系,将所述文本模板中的占位符替换成目标数据,以得到所述待生成文件;其中,所述占位符-数据映射关系包括文本占位符-文本数据映射关系和表格占位符-表格数据映射关系;所述文本占位符-文本数据映射关系用于表征文本占位符对应的文本数据;所述表格占位符-表格数据映射关系用于表征表格占位符对应的表格数据,所述表格数据包括表格及其格中的文本数据。
177.又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的文件生成方法,该方法包括:获取待生成文件对应的文本模板,并获取所述待生成文件对应的占位符-数据映射关系;基于所述占位符-数据映射关系,将所述文本模板中的占位符替换成目标数据,以得到所述待生成文件;其中,所述占位符-数据映射关系包括文本占位符-文本数据映射关系和表格占位符-表格数据映射关系;所述文本占位符-文本数据映射关系用于表征文本占位符对应的文本数据;所述表格占位符-表格数据映射关系用于表征表格占位符对应的表格数据,所述表格数据包括表格及其格中的文本数据。
178.以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
179.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
180.最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
技术特征:1.一种文件生成方法,其特征在于,包括:获取待生成文件对应的文本模板,并获取所述待生成文件对应的占位符-数据映射关系;基于所述占位符-数据映射关系,将所述文本模板中的占位符替换成目标数据,以得到所述待生成文件;其中,所述占位符-数据映射关系包括文本占位符-文本数据映射关系和表格占位符-表格数据映射关系;所述文本占位符-文本数据映射关系用于表征文本占位符对应的文本数据;所述表格占位符-表格数据映射关系用于表征表格占位符对应的表格数据,所述表格数据包括表格及其格中的文本数据。2.根据权利要求1所述的文件生成方法,其特征在于,所述基于所述占位符-数据映射关系,将所述文本模板中的占位符替换成目标数据,包括:确定所述文本模板中存在属于文本占位符的第一占位符,基于所述文本占位符-文本数据映射关系,将所述第一占位符替换成第一目标文本数据;确定所述文本模板中存在属于表格占位符的第二占位符,基于所述表格占位符-表格数据映射关系,将所述第二占位符替换成目标表格数据。3.根据权利要求2所述的文件生成方法,其特征在于,所述基于所述表格占位符-表格数据映射关系,将所述第二占位符替换成目标表格数据,包括:基于所述表格占位符-表格数据映射关系,从表格模板中获取所述第二占位符对应的目标表格;将所述第二占位符替换成所述目标表格对应的目标表格数据;其中,所述目标表格为动态表格,所述动态表格为多个文件均包括的表格。4.根据权利要求3所述的文件生成方法,其特征在于,所述将所述第二占位符替换成所述目标表格对应的目标表格数据,包括:将所述第二占位符替换成所述目标表格;确定所述文本模板中的目标表格中存在属于文本占位符的第四占位符,基于所述文本占位符-文本数据映射关系,将所述第四占位符替换成第三目标文本数据,以将所述文本模板中的目标表格替换成目标表格数据。5.根据权利要求3所述的文件生成方法,其特征在于,所述表格模板基于如下步骤确定:获取所述待生成文件对应的样本文件;确定所述样本文件中存在所述动态表格,将所述动态表格从所述样本文件提取至表格模板;确定所述表格模板的动态表格中的第一动态文本数据,基于文本数据-文本占位符映射关系,将所述第一动态文本数据替换成第一目标占位符,所述第一动态文本数据为动态变化的变量。6.根据权利要求1所述的文件生成方法,其特征在于,所述文本模板基于如下步骤确定:获取所述待生成文件对应的样本文件;
确定所述样本文件中的第二动态文本数据,基于文本数据-文本占位符映射关系,将所述第二动态文本数据替换成第二目标占位符,以得到所述文本模板,所述第二动态文本数据为动态变化的变量。7.根据权利要求6所述的文件生成方法,其特征在于,所述获取所述待生成文件对应的样本文件,之后还包括:确定所述样本文件中存在动态表格,将所述动态表格替换成表格占位符,所述动态表格为多个文件均包括的表格。8.一种文件生成装置,其特征在于,包括:获取模块,用于获取待生成文件对应的文本模板,并获取所述待生成文件对应的占位符-数据映射关系;替换模块,用于基于所述占位符-数据映射关系,将所述文本模板中的占位符替换成目标数据,以得到所述待生成文件;其中,所述占位符-数据映射关系包括文本占位符-文本数据映射关系和表格占位符-表格数据映射关系;所述文本占位符-文本数据映射关系用于表征文本占位符对应的文本数据;所述表格占位符-表格数据映射关系用于表征表格占位符对应的表格数据,所述表格数据包括表格及其格中的文本数据。9.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至7任一项所述文件生成方法。10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述文件生成方法。
技术总结本发明涉及数据处理技术领域,提供一种文件生成方法、装置、电子设备和存储介质,其中方法包括:获取待生成文件对应的文本模板,并获取所述待生成文件对应的占位符-数据映射关系;基于所述占位符-数据映射关系,将所述文本模板中的占位符替换成目标数据,以得到所述待生成文件;其中,所述占位符-数据映射关系包括文本占位符-文本数据映射关系和表格占位符-表格数据映射关系;所述文本占位符-文本数据映射关系用于表征文本占位符对应的文本数据;所述表格占位符-表格数据映射关系用于表征表格占位符对应的表格数据,所述表格数据包括表格及其格中的文本数据。本发明可以实现高效、便捷、灵活的文件生成方式。灵活的文件生成方式。灵活的文件生成方式。
技术研发人员:毕旭东 马金良
受保护的技术使用者:中化现代农业有限公司
技术研发日:2022.07.25
技术公布日:2022/11/1