技术新讯 > 计算推算,计数设备的制造及其应用技术 > 一种文件生成方法、装置、电子设备及存储介质与流程  >  正文

一种文件生成方法、装置、电子设备及存储介质与流程

  • 国知局
  • 2024-07-31 23:14:05

本技术涉及计算机,特别是涉及一种文件生成方法、装置、电子设备及存储介质。

背景技术:

1、各种业务平台能够向用户提供各种服务,与此同时,业务平台还会记录向用户提供服务过程中生成的各种数据。随着业务平台的用户量增大,业务平台记录的各种数据也呈现爆炸性增长,这样非常不利于平台维护人员基于这些数据了解平台所提供服务的用户反馈等信息,进而也不利于平台维护人员了解平台的运行情况。

2、为此需要提供一种对上述数据进行整理后的文件生成方案,以便于平台维护人员了解平台的运行情况。

技术实现思路

1、本技术实施例的目的在于提供一种文件生成方法、装置、电子设备及存储介质,以生成对业务数据进行整理后的文件。具体技术方案如下:

2、第一方面,本技术实施例提供了一种文件生成方法,所述方法包括:

3、第一进程响应于文件生成操作,确定待生成文件的内容属性和所述待生成文件的源数据,并生成包含所述内容属性和源数据的json文本,其中,所述内容属性包括:表格属性和/或图表属性,所述第一进程为c++进程;

4、所述第一进程调用第二进程,其中,所述第二进程为python进程;

5、所述第二进程基于所述json文本生成包含表格和/或图表的文件。

6、本技术的一个实施例中,所述第二进程基于所述json文本生成包含表格和/或图表的文件,包括:

7、所述第二进程通过表文件创建库的访问接口调用所述表文件创建库,创建表文件,并基于所述json文本中包含的内容属性和源数据在所述表文件中添加表格和/或图表。

8、本技术的一个实施例中,在所述第一进程生成包含所述内容属性和源数据的json文本之后,还包括:

9、所述第一进程将所述json文本写入预先设定的内存空间中空闲的第一区域;

10、在所述第一进程调用第二进程之后,还包括:

11、所述第二进程从所述第一区域读取所述json文本。

12、本技术的一个实施例中,所述第一进程将所述json文本写入预先设定的内存空间中空闲的第一区域,包括:

13、所述第一进程基于滑动窗口查找方式,从预先设定的内存空间的空间头开始向空间尾查找第一长度的连续内存区域,将第一次查找到的内存区域作为第一区域,其中,所述第一长度为:所述json文本的长度;

14、基于所述第一区域的首地址和所述第一长度,将所述json文本写入所述第一区域。

15、本技术的一个实施例中,所述预先设定的内存空间包括:

16、文件映射管理的内存空间,或

17、内存映射对应的虚拟内存空间。

18、本技术的一个实施例中,所述第一进程调用第二进程,包括:

19、所述第一进程以所述预先设定的内存空间的首地址、所述第一区域的首地址和所述json文本的第一长度为调用参数调用所述第二进程。

20、本技术的一个实施例中,所述方法还包括:

21、所述第二进程将文件生成反馈信息存储至所述预先设定的内存空间,其中,所述文件生成反馈信息包括:文件生成结果和/或文件生成进度信息;

22、所述第一进程从所述预先设定的内存空间获得所述文件生成反馈信息,并向用户提供所述文件生成反馈。

23、第二方面,本技术实施例提供了一种文件生成装置,所述装置包括:

24、文本生成模块,用于第一进程响应于文件生成操作,确定待生成文件的内容属性和所述待生成文件的源数据,并生成包含所述内容属性和源数据的json文本,其中,所述内容属性包括:表格属性和/或图表属性,所述第一进程为c++进程;

25、进程调用模块,用于所述第一进程调用第二进程,其中,所述第二进程为python进程;

26、文件生成模块,用于所述第二进程基于所述json文本生成包含表格和/或图表的文件。

27、本技术的一个实施例中,所述文件生成模块,具体用于通过表文件创建库的访问接口调用所述表文件创建库,创建表文件,并基于所述json文本中包含的内容属性和源数据在所述表文件中添加表格和/或图表。

28、本技术的一个实施例中,所述装置还包括:文本写入模块,用于在所述文本生成模块生成所述json文本之后,所述第一进程将所述json文本写入预先设定的内存空间中空闲的第一区域;文本读取模块,用于在所述第一进程调用所述第二进程之后,所述第二进程从所述第一区域读取所述json文本。

29、本技术的一个实施例中,所述文本写入模块,具体用于所述第一进程基于滑动窗口查找方式,从预先设定的内存空间的空间头开始向空间尾查找第一长度的连续内存区域,将第一次查找到的内存区域作为第一区域,其中,所述第一长度为:所述json文本的长度;基于所述第一区域的首地址和所述第一长度,将所述json文本写入所述第一区域。

30、本技术的一个实施例中,所述预先设定的内存空间包括:文件映射管理的内存空间,或 内存映射对应的虚拟内存空间。

31、本技术的一个实施例中,所述进程调用模块,具体用于所述第一进程以所述预先设定的内存空间的首地址、所述第一区域的首地址和所述json文本的第一长度为调用参数调用所述第二进程。

32、本技术的一个实施例中,所述装置还包括:文件存储模块,用于所述第二进程将文件生成反馈信息存储至所述预先设定的内存空间,其中,所述文件生成反馈信息包括:文件生成结果和/或文件生成进度信息;

33、信息反馈模块,用于所述第一进程从所述预先设定的内存空间获得所述文件生成反馈信息,并向用户提供所述文件生成反馈。

34、第三方面,本技术实施例提供了一种电子设备,包括:

35、存储器,用于存放计算机程序;

36、处理器,用于执行存储器上所存放的程序时,实现上述第一方面所述的方法。

37、第四方面,本技术实施例提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面所述的方法。

38、第五方面,本技术实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面所述的方法。

39、本技术实施例有益效果:

40、由以上可见,本技术实施例提供的方案中,在出现文件生成操作的情况下,由第一进程对上述文件生成操作进行响应,生成包含待生成文件的内容属性和源数据的json文本,并调用第二进程,由于json文本中记录了待生成文件中是包含表格,还是包含图表,还是两者均包含,且记录有表格属性和/或图表属性,这样由第二进程基于json文本对源数据进行分析,可以很好的对源数据进行整理,进而生成与json文本中包含的表格属性和/或图表属性相一致的表格和/或图表。又由于表格和图表相对于源数据而言均具有较佳的整合性,进而应用本技术实施例提供的方案,能够生成整理后的文件,且这样生成的文件便于人员了解源数据所反映的情况。

41、又由于本技术实施例提供的方案中,第一进程为c++进程,而第二进程为python进程,python有着功能强大的python库,这样通过c++和python这两种不同语言的进程间调用,能够使用更加强大的库实现文件生成,相比于c进程而言,可调用的库中各种功能函数更加丰富,能够生成的表格以及图表更加丰富。

42、除此之外,包含表格和/或图表的文件是对源数据进行分析得到的,若上述源数据发生变化,上述文件中的表格和/或图表也会随源数据变化而变化。

43、当然,实施本技术的任一产品或方法并不一定需要同时达到以上所述的所有优点。

本文地址:https://www.jishuxx.com/zhuanli/20240730/196561.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。