国产系统统信uos和麒麟v10在线打开word给表格赋值

  • 查看本示例演示效果
  • 本示例关键代码的编写位置,请参考"开始 - 快速上手"里您所使用的开发语言框架的最简集成代码

在实际项目涉及到Word文档的开发中,常常会遇到希望自动填充各项数据到Word表格中,动态生成Word文档的需求。比如有一个人员信息表,数据库表已经保存了人员的资料信息,设计好一个人员信息表模板docx,需要要把这些人员信息动态填充到word 表格中。

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

注意

注:插入书签的时候一定要先选中整个table,然后再点击插入书签按钮进行插入。

后端代码:

java

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

WordDocumentWriter doc = new WordDocumentWriter();
DataRegionWriter dataRegion = doc.openDataRegion("PO_regTable");
TableWriter table = dataRegion.openTable(1); //index代表当前书签中table位置的索引,从1开始

table.openCellRC(3, 1).setValue("A公司");//openCellRC(行, 列),索引从1开始
table.openCellRC(3, 2).setValue("开发部");
table.openCellRC(3, 3).setValue("李清");

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

poCtrl.setWriter(doc);
poCtrl.webOpen("doc/test.doc", OpenModeType.docNormalEdit, "张三");

.NetCore

cs 复制代码
PageOfficeNetCore.PageOfficeCtrl POCtrl = new PageOfficeNetCore.PageOfficeCtrl(Request);

PageOfficeNetCore.Word.WordDocumentWriter doc = new PageOfficeNetCore.Word.WordDocumentWriter();
PageOfficeNetCore.Word.DataRegionWriter dataRegion = doc.OpenDataRegion("PO_regTable");
//打开table,OpenTable(index)方法中的index代表Word文档中table位置的索引,从1开始
PageOfficeNetCore.Word.WordTableWriter  table = dataRegion.OpenTable(1);
//给table中的单元格赋值, OpenCellRC(行, 列)
table.OpenCellRC(3, 1).Value = "A公司";
table.OpenCellRC(3, 2).Value = "开发部";
table.OpenCellRC(3, 3).Value = "李清";

table.OpenCellRC(4, 1).Value = "B公司";
table.OpenCellRC(4, 2).Value = "销售部";
table.OpenCellRC(4, 3).Value = "张三";

POCtrl.SetWriter(doc);
POCtrl.WebOpen("doc/test.doc", PageOfficeNetCore.OpenModeType.docNormalEdit, "tom");

效果:

相关推荐
惊讶的猫21 小时前
探究StringBuilder和StringBuffer的线程安全问题
java·开发语言
jmxwzy21 小时前
Spring全家桶
java·spring·rpc
Halo_tjn21 小时前
基于封装的专项 知识点
java·前端·python·算法
Fleshy数模21 小时前
从数据获取到突破限制:Python爬虫进阶实战全攻略
java·开发语言
像少年啦飞驰点、1 天前
零基础入门 Spring Boot:从“Hello World”到可上线的 Web 应用全闭环指南
java·spring boot·web开发·编程入门·后端开发
苍煜1 天前
万字详解Maven打包策略:从基础插件到多模块实战
java·maven
有来技术1 天前
Spring Boot 4 + Vue3 企业级多租户 SaaS:从共享 Schema 架构到商业化套餐设计
java·vue.js·spring boot·后端
东东5161 天前
xxx医患档案管理系统
java·spring boot·vue·毕业设计·智慧城市
一个响当当的名号1 天前
lectrue9 索引并发控制
java·开发语言·数据库
进阶小白猿1 天前
Java技术八股学习Day30
java·开发语言·学习