一种解决网页生成文件在WPS和Word打开时格式冲突的方法与流程

文档序号:31543613发布日期:2022-09-17 00:33阅读:144来源:国知局
一种解决网页生成文件在WPS和Word打开时格式冲突的方法与流程
一种解决网页生成文件在wps和word打开时格式冲突的方法
技术领域
1.本发明涉及网页制作技术领域,具体为一种解决网页生成文件在wps和word打开时格式冲突的方法。


背景技术:

2.在一些基于java poi来实现的办公系统网站中,需要向用户提供一些模板类文件,如:合同模板、会议记录模板,用户将模板下载后填写个性化内容,然后再上传到系统中,系统会根据模板的类型,为合同自动生成如:合同编号、记录编号、页码等流水号。这部分动态代码通常嵌入在合同模板中。然而,当用户使用办公软件打开模板文件进行编辑的时候,办公软件会同时对模板中的自动编号这部分代码进行修改;当用户再次提交时,办公系统实际上处理的文件是动态代码已经被修改过的文件。
3.因为对于下载的模板文件,用户有可能通过不同的办公软件进行编辑。如:后缀为.doc和.docx的文件,用户使用的软件可能是wps也可能是word,这些办公软件对于模板的中动态代码的修改可能会不一致导致互不兼容。 网站没办法预测或者判断用户具体是使用哪种软件进行内容编写的,所以通常办公系统网站默认处理一种常见的软件编写的文档。这就导致当用户使用了网站没有兼容的软件打开文档的时候,填写内容后再次上传的文件,有可能出现自动编码的内容显示出错或者编码出错。
4.如图1所示的用户提交的基于wps软件制作的文件的页眉部分,内容为:租赁协议编号:${合同编号}。 用户将动态网页中的内容以.doc或.docx格式下载到本地后,通过本地的软件打开文件。当办公系统软件支持wps制作的文件时,用户在使用wps软件对模板进行个性化编辑后,再将模板上传到系统中,系统自动生成的租赁协议编号如图2所示,页眉的内容是可以正确显示的。而用户在通过word文件进行个性化编辑后,上传到系统中的编辑后文档的页眉页脚无法正确识别,系统在进行自动生成操作后,显示出错,如图3所示,出现两行“租赁协议编号”。
5.所以,现有的很多基于java poi来实现的办公系统网站对于模板类文件中的页眉页脚中自动编号这部分功能,因为无法覆盖到所有的办公软件,存在着一定的实现出错的概率。


技术实现要素:

6.为了解决现有的很多基于java poi来实现的办公系统网站对于模板类文件中的页眉页脚中自动编号这部分功能,存在着一定的实现出错的概率的问题,本发明提供一种解决网页生成文件在wps和word打开时格式冲突的方法,其可避免用户上传文件中页眉和页脚显示错误的问题发生。
7.本发明的技术方案是这样的:一种解决网页生成文件在wps和word打开时格式冲突的方法,其特征在于,其包括以下步骤:s1:读取用户上传的待处理文件;
s2:确认所述待处理上传文件中的页眉页脚中是否存在动态变量代码;如果不存在,则结束本次检查,直接进行后续其他处理;如果存在,则执行步骤s3;s3:读取页眉页脚中的静态文本内容,记作待处理文本;s4:获取页眉页脚中需要动态生成的变量,计算得到最后需要显示的变量的值,记作:待显示变量值;s5:删除所述待处理文件中的页眉和页脚中的所有内容;s6:在所述待处理文件中的页眉和页脚中,将所述待处理文本替换到静态文本的位置,将所述待显示变量值以静态文本的方式替换到变量显示的位置;s7:生成处理后的文件并保存。
8.本发明提供的一种解决网页生成文件在wps和word打开时格式冲突的方法,其将页眉页脚中需要动态生成、动态显示的内容,基于网站后台代码生成后,将用户上传文件中的页眉页脚内容删除,然后将所有内容以静态文本方式替换到页眉页脚中,确保文件中页眉页脚的内容显示正确,即便用户再次下载到本地,也不会出现显示错误的问题。
附图说明
9.图1为现有技术中的模板实施例;图2为现有技术中的基于兼容软件修改后的文文件上传后显示的实施例;图3为现有技术中的基于不兼容软件修改后文件页眉页脚显示错误的实施例;图4为本发明解决网页生成文件在wps和word打开时格式冲突方法的流程示意图。
具体实施方式
10.如图4所示,本发明提供一种解决网页生成文件在wps和word打开时格式冲突的方法,其包括以下步骤。
11.s1:读取用户上传的待处理文件。
12.如图1~图3所示的实施例中,用户上传的格式为.doc或者.docx的文件,通过类xwpfdocument获取待处理文件。
13.s2:确认所述待处理上传文件中的页眉页脚中是否存在动态变量代码;如果不存在,则结束本次检查,直接进行后续其他处理;如果存在,则执行步骤s3。
14.通过xwpfdocument.getheadlist()方法获取xwpfheader页眉和页脚列表,如果文件中没有页眉和页脚,或者虽然有页眉或者页脚,但是只存在静态文本和图片,不会产生格式冲突的问题,也无需进行后续操作。
15.s3:读取页眉页脚中的静态文本内容,记作待处理文本。
16.通过xwpfheader.gettext获取文字内容,需要记录下静态文本内容,记作待处理文本,方便后续新建页眉页脚时拼接使用。
17.s4:获取页眉页脚中需要动态生成的变量,计算得到最后需要显示的变量的值,记作:待显示变量值。
18.具体实施时,不同的动态变量,计算方法不同。本实施例中的动态生成的变量通过“$”来标记,生成的是合同编号,具体生成方式是在现有同类型文件中的合同编号最大的数值上加1。
19.s5:删除所述待处理文件中的页眉和页脚中的所有内容。
20.将文档中获取到的页眉页脚列表中的所有的页眉页脚都删除。
21.s6:在所述待处理文件中的页眉和页脚中,把待处理文本和处理好的待显示变量值,合成页眉,然后新建一个页眉,并且把合成好的页面字符串,赋值给新建的页眉。
22.s7:生成处理后的文件并保存。
23.使用本发明的技术方案后,网站无需分析用户上传的文件是通过何种办公软件进行修改过的文件,也无需判断上传的文件是否会发生问题,只需要统一将文件中发生问题的动态变量部分使用静态文本进行替换即可。实现过程简单,不但适用于wps和word的冲突问题解决,也适用于其他的各种办公软件中的动态代码格式冲突问题的解决。


技术特征:
1.一种解决网页生成文件在wps和word打开时格式冲突的方法,其特征在于,其包括以下步骤:s1:读取用户上传的待处理文件;s2:确认所述待处理上传文件中的页眉页脚中是否存在动态变量代码;如果不存在,则结束本次检查,直接进行后续其他处理;如果存在,则执行步骤s3;s3:读取页眉页脚中的静态文本内容,记作待处理文本;s4:获取页眉页脚中需要动态生成的变量,计算得到最后需要显示的变量的值,记作:待显示变量值;s5:删除所述待处理文件中的页眉和页脚中的所有内容;s6:在所述待处理文件中的页眉和页脚中,将所述待处理文本替换到静态文本的位置,将所述待显示变量值以静态文本的方式替换到变量显示的位置;s7:生成处理后的文件并保存。

技术总结
本发明提供的一种解决网页生成文件在WPS和Word打开时格式冲突的方法,其将页眉页脚中需要动态生成、动态显示的内容,基于网站后台代码生成后,将用户上传文件中的页眉页脚内容删除,然后将所有内容以静态文本方式替换到页眉页脚中,确保文件中页眉页脚的内容显示正确,即便用户再次下载到本地,也不会出现显示错误的问题。错误的问题。错误的问题。


技术研发人员:郭彦涛
受保护的技术使用者:江苏未至科技股份有限公司
技术研发日:2022.06.15
技术公布日:2022/9/16
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1