国产linux系统(银河麒麟,统信uos)使用 PageOffice实现word 文档中的table插入新行并赋值

PageOffice 国产版 :支持信创系统,支持银河麒麟V10和统信UOS,支持X86(intel、兆芯、海光等)、ARM(飞腾、鲲鹏、麒麟等)、龙芯(Mips、LoogArch)芯片架构。

在项目的开发中会遇到这样的需求:要求在生成word文件的时候,需要给表格赋值,但是表格行数不固定,需要根据数据库中的数据记录实现数据填充。通过调用PageOffice动态添加行的功能,就可以实现此需求。

比如一个下图所示的Word表格文件:

使用本文"后端代码"对表格做数据填充后的效果如下图所示:

Word中的table是要借助数据区域(DataRegion)实现的,要求数据区域完整的包含了整个Table的内容,这样才可以通过数据区域控制和操作table。因此,要想使用table,则必须在word文件中插入书签。而table的插入,既可以在Word模版中书签处手动插入:工具栏"插入"→"表格",亦可以在程序中通过数据区域动态添加。

后端代码

复制代码
    PageOfficeCtrl poCtrl = new PageOfficeCtrl(request);

    WordDocumentWriter doc = new WordDocumentWriter();
    //打开数据区域
    DataRegionWriter dataRegion = doc.openDataRegion("PO_regTable");
    //打开table,openTable(index)方法中的index代表Word文档中table位置的索引,从1开始
    TableWriter table = dataRegion.openTable(1);

    //给table中的单元格赋值, openCellRC(int,int)中的参数分别代表第几行、第几列,从1开始
    table.openCellRC(3, 1).setValue("A公司");
    table.openCellRC(3, 2).setValue("开发部");
    table.openCellRC(3, 3).setValue("李清");

    //插入一行,insertRowAfter方法中的参数代表在哪个单元格下面插入一个空行
    table.insertRowAfter(table.openCellRC(3, 3));

    table.openCellRC(4, 1).setValue("B公司");
    table.openCellRC(4, 2).setValue("销售部");
    table.openCellRC(4, 3).setValue("张三");

    poCtrl.setWriter(doc);

    //webOpen的第一个参数支持能够输出下载文件的Url相对地址或者文件在服务器上的磁盘路径两种方式
    poCtrl.webOpen("D:\\template1.docx", OpenModeType.docNormalEdit, "张三");

参考链接:https://pageoffice.cn/pages/9fa856/

相关推荐
MinterFusion5 小时前
如何使用openKylin文件管理器(二)
信创·系统运维·文件管理器·明德融创·openkylin·银河麒麟桌面版
Ai-_Man2 天前
豆包智能体内容批量导出:哪些该存、存成什么、怎么存v
人工智能·ai·小程序·word
weixin_416660072 天前
解决方案:DeepSeek不支持直接导出Word
word
2601_965912912 天前
PDF转Word工具深度横评:2026年国内免费方案技术对比
pdf·word
L歪歪君 山水甲天3 天前
Office文件的奥秘——.NET平台下不借助Office实现Word、Powerpoint等文件的解析(1)
word·powerpoint·.net
SpaceAIGlobal3 天前
Word文档一键转PPT?4种方法实测对比与选型分析(2026)
word·powerpoint
随手工具-Excel, pdf, SQL4 天前
多个 PDF 怎么合并成一个?免费在线工具,还能混入图片和 Word
pdf·word·效率工具·在线工具·pdf合并·合并pdf
ms365copilot4 天前
在Copilot聊天中添加Word、Excel 和 PowerPoint 代理
word·excel·copilot
2601_965912834 天前
PDF转Word技术选型:2026年文档解析引擎性能对比与集成评估
pdf·word
大数据张老师4 天前
Typora 导出 Word 模版操作手册
开发语言·c#·word·typora