poi中,如何向Word文档里添加表格?

poi中,如何向Word文档里添加表格?,第1张

//创建一个表格

XWPFTable table = doc.createTable(4,2)

table.setCellMargins(50, 0, 50,3000)//top, left, bottom, right

//table.setInsideHBorder(XWPFBorderType.NONE, 0, 0, "")//去除单元格间的横线

table.getRow(0).getCell(0).setText("字段一:")

table.getRow(0).getCell(1).setText("字段二:")

table.getRow(1).getCell(0).setText("字段三:")

table.getRow(1).getCell(1).setText("字段四:")

使用POI *** 作不同OFFICE应用用到的POI组件不同,从而引用的jar包也不一样。 例如我们仅利用HSSF来建立excel文件,则我们只需要进入POI.jar,在此例中引入的是poi-3.8-20120326.jar。

创建excel首先要获取到Workbook。 Workbook可以直接通过输出流(OutputStream)输出到指定位置。 例如我们需要在C盘创建一个text.xls文件,则可以利用Workbook和FileOutputStream来做到。

import java.io.FileNotFoundException

import java.io.FileOutputStream

import java.io.IOException

import org.apache.poi.hssf.usermodel.HSSFWorkbook

import org.apache.poi.ss.usermodel.Workbook

public static void main(String[] args){

try {

FileOutputStream out = new FileOutputStream("c:\\test.xls")

Workbook wb = new HSSFWorkbook()

wb.write(out)

out.close()

} catch (FileNotFoundException e1) {

e1.printStackTrace()

}catch (IOException e) {

e.printStackTrace()

}

}

此时创建的excel文件虽然可以打开,但实际上其为空的excel应用程序,打开会发生错误,随即修复为带有一个sheet的文件。 我们需要为之工作簿添加sheet 。 Workbook接口能够创建出sheet ,且新创建的sheet会自动被添加到Workbook队列中,且能为sheet命名。 在工作簿中有了两页表格,我们可以为之添加数据、设置样式等等。 值得注意的是我们在sheet中创建的行( row )或者单元格( cell )仅当为其设置了内容,才会自动增加到sheet上。

import java.io.FileNotFoundException

import java.io.FileOutputStream

import java.io.IOException

import org.apache.poi.ss.usermodel.Workbook

import org.apache.poi.hssf.usermodel.HSSFWorkbook

import org.apache.poi.ss.usermodel.Sheet

import org.apache.poi.ss.usermodel.Font

import org.apache.poi.ss.usermodel.Row

import org.apache.poi.ss.usermodel.Cell

import org.apache.poi.ss.usermodel.CellStyle

public class TestHSSF {

public static void main(String[] args){

// create a new file

FileOutputStream out

try {

out = new FileOutputStream("c:\\test.xls")

Workbook wb = new HSSFWorkbook()

//创建sheet

Sheet s1 = wb.createSheet()

Sheet s2 = wb.createSheet()

//命名sheet

wb.setSheetName(0, "第一个sheet" )

wb.setSheetName(1, "第二个sheet" )

//创建行 Row r = s1.createRow(30)

//设置行高 r.setHeight((short)1132)

//创建单元格 Cell c = r.createCell(3)

//创建样式,设置字体颜色、设置为粗体、设置底边框宽度等等 CellStyle cs = wb.createCellStyle()

cs.setBorderBottom((short)2)

Font f = wb.createFont()

f.setFontHeightInPoints((short) 18)

f.setColor( (short)0xc )

f.setBoldweight(Font.BOLDWEIGHT_BOLD)

cs.setFont(f)

//设置单元格为样式cs

c.setCellStyle(cs)

//设置单元格值 c.setCellValue("测试")

wb.write(out)

out.close()

} catch (FileNotFoundException e1) {

// TODO Auto-generated catch block

e1.printStackTrace()

}catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace()

}

}

}

本文概括陈述了POI的组件构成,及其主要作用,使我们了解到在工程中可以利用POI来 *** 作office应用,同时略举了一个简单例子说明Workbook (能够创建CellStyle 、 Font 、 Sheet )、 CellStyle 、 Font 、 Sheet (能够创建Row 、 Cell )、 Row和Cell的关系,进而了解HSSF组件的简单使用。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11919255.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存