如何使用poi在word表格中新增行的4種方法


本文記錄了,在word表格中插入新行的幾種方法。直接上代碼說明

    table.addNewRowBetween 沒實現,官網文檔也說明,只有函數名,但沒具體實現,但很多文章還介紹如何使用這個函數,真是害人
table.insertNewTableRow 這個可以,但是要創建 cell,否則不顯示數據
table.addRow() 在表格最后加一行 ,不適用於復雜表格
  table.addRow(XWPFTableRow row, int pos) 沒試過,你可以試試。
table.createRow() 在表格最后加行,不適用於復雜表格

 1 /**
 2  * 為表格插入數據,行數不夠添加新行
 3  *
 4  * @param table     需要插入數據的表格
 5  * @param tableList 插入數據集合
 6  */
 7 public static void insertTable(XWPFTable table, List<String[]> tableList) {
 8     //table.addNewRowBetween 沒實現,官網文檔也說明,只有函數名,但沒具體實現,但很多文章還介紹如何使用這個函數,真是害人
 9     //table.insertNewTableRow 本文用這個可以,但是要創建 cell,否則不顯示數據
10     //table.addRow() 在表格最后加一行
11     // table.addRow(XWPFTableRow row, int pos) 沒試過,你可以試試。
12     //table.createRow() 在表格最后一加行
13 
14     for (int i = 0; i < tableList.size(); i++) {//遍歷要添加的數據的list
15         XWPFTableRow newRow = table.insertNewTableRow(i+1);//為表格添加行
16         String[] strings =  tableList.get(i);//獲取list中的字符串數組
17         for (int j = 0; j < strings.length; j++) {//遍歷list中的字符串數組
18             String strings1 =  strings[j];
19             newRow.createCell();//在新增的行上面創建cell
20             newRow.getCell(j).setText(strings1);//給每個cell賦值。
21 
22         }
23 }

 

 
        

 

 
        
下面是運行結果,我在表頭和下面內容之間插入8條數據。。一般文檔只是介紹在表格最后增數據明顯不符合我的需求:

 
       


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM