[POI]Word文档的相关操作

首先是本文中需要用到的JAR包(POI3.9)
[POI]Word文档的相关操作_第1张图片

创建一个Word文档,并且创建表格

    String outputFile = "d:\\text\\test1.docx";
    // New Document
    XWPFDocument document = new XWPFDocument();
    // New Table,生成一个一行一列的表格
    XWPFTable tableOne = document.createTable();


    //获取Table的第一行
    XWPFTableRow tableOneRowOne = tableOne.getRow(0);
    //给Table的第一行第一列单元格赋值
    tableOneRowOne.getCell(0).setText("第1行第1列");
    //新建第2列并赋值
    tableOneRowOne.createCell().setText("第1行第2列");
    tableOneRowOne.createCell().setText("第1行第3列");

    //新建一行
    XWPFTableRow tableOneRowTwo = tableOne.createRow();
    tableOneRowTwo.getCell(0).setText("第2行第1列");
    tableOneRowTwo.getCell(1).setText("第2行第2列");
    tableOneRowTwo.getCell(2).setText("第2行第3列");

    //新建一行
    XWPFTableRow tableOneRowThree = tableOne.createRow();
    tableOneRowThree.getCell(0).setText("第3行第1列");
    tableOneRowThree.getCell(1).setText("第3行第2列");
    tableOneRowThree.getCell(2).setText("第3行第3列");

    FileOutputStream fOut;
    try {
        fOut = new FileOutputStream(outputFile);
        document.write(fOut); 
        fOut.flush();
        // 操作结束,关闭文件
        fOut.close();
    } catch (Exception e) {
        e.printStackTrace();
    }

在已有Word文档的基础上继续创建表格

test.docx(表格中带有书签)
[POI]Word文档的相关操作_第2张图片

    String inputFile = "d:\\text\\test.docx";
    String outputFile = "d:\\text\\test1.docx";
    // New Document
    XWPFDocument document = new XWPFDocument(new FileInputStream(inputFile));
    // 获取第一个Table
    XWPFTable tableOne = document.getTables().get(0);

    //获取Table的第一行
    XWPFTableRow tableOneRowOne = tableOne.getRow(0);
    tableOneRowOne.getCell(0).setText("第1行第1列");
    tableOneRowOne.getCell(1).setText("第1行第2列");

    //新建一行
    XWPFTableRow tableOneRowTwo = tableOne.createRow();
    tableOneRowTwo.getCell(0).setText("第2行第1列");
    tableOneRowTwo.getCell(1).setText("第2行第2列");

    //新建一行
    XWPFTableRow tableOneRowThree = tableOne.createRow();
    tableOneRowThree.getCell(0).setText("第3行第1列");
    tableOneRowThree.getCell(1).setText("第3行第2列");

    FileOutputStream fOut;
    try {
        fOut = new FileOutputStream(outputFile);
        document.write(fOut); 
        fOut.flush();
        // 操作结束,关闭文件
        fOut.close();
    } catch (Exception e) {
        e.printStackTrace();
    }

最后的生成效果演示

[POI]Word文档的相关操作_第3张图片

你可能感兴趣的:(JavaEE,JavaSE,POI)