NPOI导出word,NPOI导出word表格,NPOI复制table表格 XWPFDocument中XWPFTable

使用NPOI可以对Word中的文本做替换,当遇到表格时,单个表格也可以循环遍历替换,但是如果需要根据数据源的条数,动态生成多个表格时,该怎么办?这里提供一种方案,
①先获取到word文档XWPFDocument myDoc
②再获取到word原本的表格模板myDoc.Tables[tableIndex]
③复制表格模板,有多少条源数据,复制多少个表格
④遍历源数据,一条数据替换并生成一个表格

        /// <summary>/// 为XWPFDocument文档复制指定索引的表/// </summary>/// <param name="myDoc"></param>/// <param name="tableIndex">需要复制的table的索引</param>/// <param name="targetIndex">复制到目标位置的table索引(如果目标位置原来有表格,会被覆盖)</param>public static void CopyTable(XWPFDocument myDoc, int tableIndex, int targetIndex){var sourceTable = myDoc.Tables[tableIndex];CT_Tbl sourceCTTbl = myDoc.Document.body.GetTblArray(8);var targetTable = myDoc.CreateTable();myDoc.SetTable(targetIndex, targetTable);var targetCTTbl = myDoc.Document.body.GetTblArray()[myDoc.Document.body.GetTblArray().Length - 1];//CopyTable(sourceTable, targetCTTbl);targetCTTbl.tblPr = sourceCTTbl.tblPr;targetCTTbl.tblGrid = sourceCTTbl.tblGrid;for (int i = 0; i < sourceTable.Rows.Count; i++){var tbRow = targetTable.CreateRow();var targetRow = tbRow.GetCTRow();tbRow.RemoveCell(0);XWPFTableRow row = sourceTable.Rows[i];targetRow.trPr = row.GetCTRow().trPr;targetRow.trPr = row.GetCTRow().trPr;targetRow.trPr = row.GetCTRow().trPr;targetRow.trPr = row.GetCTRow().trPr;for (int c = 0; c < row.GetTableCells().Count; c++){var tbCell = tbRow.CreateCell();tbCell.RemoveParagraph(0);var targetCell = tbCell.GetCTTc();XWPFTableCell cell = row.GetTableCells()[c];targetCell.tcPr = cell.GetCTTc().tcPr;for (int p = 0; p < cell.Paragraphs.Count; p++){var tbPhs = tbCell.AddParagraph();CT_P targetPhs = tbPhs.GetCTP();XWPFParagraph para = cell.Paragraphs[p];var paraCTP = para.GetCTP();targetPhs.pPr = paraCTP.pPr;targetPhs.rsidR = paraCTP.rsidR;targetPhs.rsidRPr = paraCTP.rsidRPr;targetPhs.rsidRDefault = paraCTP.rsidRDefault;targetPhs.rsidP = paraCTP.rsidP;for (int r = 0; r < para.Runs.Count; r++){var tbRun = tbPhs.CreateRun();CT_R targetRun = tbRun.GetCTR();XWPFRun run = para.Runs[r];var runCTR = run.GetCTR();targetRun.rPr = runCTR.rPr;targetRun.rsidRPr = runCTR.rsidRPr;targetRun.rsidR = runCTR.rsidR;CT_Text text = targetRun.AddNewT();text.Value = run.Text;}}}}targetTable.RemoveRow(0);}

NPOI导出word,NPOI导出word表格,NPOI复制table表格 XWPFDocument中XWPFTable相关推荐

  1. 将表格转换成纯html,HTML table表格转换为Markdown table表格

    举个栗子,当我想要把这个页面的第一个表格转换成Markdown Table时,怎么做更快,效率更高? 只需简单三步,请看示例: 第一步:复制包含HTML table标签的代码 复制table代码(HT ...

  2. 将下列表格转换为HTML代码,HTML table表格转换为Markdown table表格

    举个栗子,当我想要把这个页面的第一个表格转换成Markdown Table时,怎么做更快,效率更高? 只需简单三步,请看示例: 第一步:复制包含HTML table标签的代码 复制table代码(HT ...

  3. bootstrapt 表格自适应_BootStrap table表格插件自适应固定表头(超好用)

    首先是简单的页面形式,大家可以按照平常画表格的方式来创建html表格,然后通过js控制特殊的样式等操作(优点是表格更加直观,方便调整表格样式等,速度快) 当然,也可以只在页面上放一个table标签,之 ...

  4. html表格高度自动调整,table表格自适应高度的办法

    这篇文章主要为大家详细介绍了table表格自适应高度的办法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,有需要的朋友可以收藏方便以后借鉴. 关于自适应高度,361源码在以前给大家介绍过ifram ...

  5. 利用html制作隔行变色表格,javascript实现table表格隔行变色的方法

    本文实例讲述了javascript实现table表格隔行变色的方法.分享给大家供大家参考.具体实现方法如下: table间隔色 function SetTableColor() { var tbl = ...

  6. html table表格大小写,HTML table表格边框设置为单线的方法

    因为平时在html页面中设计表格样式时,一般都是使用 DIV+CSS 的方式来实现,很少使用 table 表格元素,而今天图省事使用 table 表格元素时,发现设置其边框为的样式为双线的形式,所以就 ...

  7. HTML里的表格不能复制粘贴,表格之间无法复制粘贴怎么办_两个EXCEL表格为什么不能复制和粘贴-win7之家...

    我们要录入数据或者制作表格的时候,经常会需要使用excel表格软件来实现,然而在操作过程中有些用户反映说遇到这样一个图问题,就是表格之间要进行复制粘贴的时候,却会提示"excel 无法粘贴信 ...

  8. 小程序table 表格+小程序table 表格太长显示不全,实现滚动效果

    <view style="margin:15px"><van-row><van-col span="20"><van- ...

  9. pdf中的表格怎么复制到word

    在我想直接引用PDF文档中的表格数据到word中时,无法通过正常的复制粘贴得到正常的表格形式.接下来介绍以下,如何解决这个问题. 步骤一:新建一个空的txt文件,将pdf中表格的数据复制粘贴到txt文 ...

最新文章

  1. 回顾2009,展望2010。
  2. java tcp client断开重连_ESP8266_12 ESP8266客户端模式下的TCP通信
  3. ubuntu修改环境变量
  4. 1.4 Java创建一个学生类
  5. C:\Python27\python.exe: can't open file '2.py': [Errno 2] No such file or directory
  6. webservice 启用代理服务器
  7. 星星之火-58:CPRI协议缺点,eCPRI协议是如何克服CPRI协议的不足?
  8. 机器学习:XGBoost算法
  9. 6.28lol服务器维护,LOL6月28日无法连接至验证服务怎么回事 6.28进不去游戏怎么办?...
  10. 计算机论文鉴定表指导教师评语,毕业论文指导老师评语|毕业论文鉴定表评语...
  11. 必须学会的几道家常菜
  12. 亚马逊抄作业,股票打折安排上
  13. 电脑dhcp服务器修改,更改电脑dhcp服务器地址
  14. css-背景渐变色动画
  15. 【今日CV 计算机视觉论文速览 第135期】Mon, 24 Jun 2019
  16. DELL电脑开机自检提示please run setup program
  17. 【代码相关-ROS】利用小觅采集的rosbag,制作双目图像集,跑orbslam2
  18. 竞争神经网络与SOM神经网络详解与matlab实践
  19. colab 挂载谷歌云盘
  20. SQL 触发器的缺点 坏处 弊端 哼╭(╯^╰)╮

热门文章

  1. 认识loadrunner及相关性能参数
  2. ajax nginx 转发 sessionid_百度、京东、网易、腾讯、淘宝等大厂都在用的Web服务器Nginx详解
  3. 找不到www.jetbrains.com的服务器IP地址
  4. 灰度图、黑白图,彩色图理解
  5. centos7 安装7z压缩命令
  6. 查看网段内正在使用的IP以及ip定位 ——CMD批处理循环
  7. POJ 3264.Balanced Lineup-RMQ(ST)详解
  8. 解决:Not creating XLA devices, tf_xla_enable_xla_devices not set
  9. 最后防线:三款开源HIDS应用对比评估
  10. Li feifei How we're teaching computers to understand pictures