Java給word中的table賦值

1、準備工做:html

  下載PageOffice for  Java:http://www.zhuozhengsoft.com/dowm/java

2、 實現方法:web

  要調用PageOffice操做Word中的table,必須藉助數據區域(DataRegion)實現的(緣由是word中的表格只有index,沒有name),要求數據區域完整的包含了整個Table的內容,這樣才能夠經過數據區域控制和操做table。而table的插入,既能夠在Word模版中書籤處手動插入:工具欄「插入」→「表格」,亦能夠在程序中經過數據區域動態添加。app

  若是不明白「數據區域」是什麼,訪問:http://www.zhuozhengsoft.com/PageOffice/course/2017/0719/276.html工具

  1. 編輯word模板。例如:word文檔中有這樣一我的員信息表,想要在這我的員信息表中填充數據,則必須先將整個成績表的table插入到一個「書籤」中:PO_regTable。插入書籤的時候必定要選擇整個table。orm


  

  2. 編寫代碼填充tableserver

複製代碼

PageOfficeCtrl poCtrl1 = new PageOfficeCtrl(request);
    poCtrl1.setServerPage(request.getContextPath()+"/poserver.zz"); 
    //操做table
    WordDocument doc = new WordDocument();
    DataRegion dataRegion = doc.openDataRegion("PO_regTable");
    //打開table,openTable(index)方法中的index表明當前書籤中table位置的索引,從1開始
    Table 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("張三");
    
    poCtrl1.setWriter(doc);
    //打開文件
    poCtrl1.webOpen("doc/test.doc", OpenModeType.docNormalEdit, "用戶名");

複製代碼

  3. 生成文件的效果htm

  

3、 示例代碼blog

  解壓下載的PageOffice for java 開發包,拷貝Samples4文件夾到Tomcat的Webapps目錄下,訪問:http://localhost:8080/Samples4/index.html索引

  參考Samples4中的:1、1七、給Word文檔中Table賦值的簡單示例 (WordSetTable)。

相關文章
相關標籤/搜索