在Java编程中,如何向Word文档中添加表格?
注意:需要访问网址:http://poi.apache.org/download.html , 下载一个Apache POI软件包。这里下载最新版本:poi-bin-3.17-20170915.tar.gz解压并将全部.jar文件导入。
需要导入全部包,如下图所示 -
以下是向Word文档中添加表格的程序。
package com.yiibai;
import java.io.File;
import java.io.FileOutputStream;
import org.apache.poi.xwpf.usermodel.XWPFDocument;
import org.apache.poi.xwpf.usermodel.XWPFTable;
import org.apache.poi.xwpf.usermodel.XWPFTableRow;
public class TablesToWord {
public static void main(String[] args) throws Exception {
// Blank Document
XWPFDocument document = new XWPFDocument();
// Write the Document in file system
FileOutputStream out = new FileOutputStream(new File("create_table.docx"));
// create table
XWPFTable table = document.createTable();
table.setWidth(1000);
// create first row
XWPFTableRow tableRowOne = table.getRow(0);
tableRowOne.getCell(0).setText("1 x 1");
tableRowOne.addNewTableCell().setText("2 x 1");
tableRowOne.addNewTableCell().setText("3 x 1");
// create second row
XWPFTableRow tableRowTwo = table.createRow();
tableRowTwo.getCell(0).setText("1 x 2");
tableRowTwo.getCell(1).setText("2 x 2");
tableRowTwo.getCell(2).setText("3 x 2");
// create third row
XWPFTableRow tableRowThree = table.createRow();
tableRowThree.getCell(0).setText("1 x 3");
tableRowThree.getCell(1).setText("2 x 3");
tableRowThree.getCell(2).setText("3 x 3");
document.write(out);
out.close();
System.out.println("create_table.docx written successully");
}
}
执行上面示例代码,得到以下结果 -
create_table.docx written successully
生成的World文档,得到以下结果 -