关于POI导出表格

来源:互联网 发布:沈阳网络方面的兼职 编辑:程序博客网 时间:2024/06/01 07:29

所用jar

<dependency>
  <groupId>org.apache.poi</groupId>
  <artifactId>poi</artifactId>
  <version>3.17-beta1</version>
</dependency>

<dependency>
  <groupId>junit</groupId>
  <artifactId>junit</artifactId>
  <version>3.8.1</version>
  <scope>test</scope>
</dependency>

 

导出实列

HSSF - 提供读写Microsoft Excel格式档案的功能。

HSSFWorkbook 声明一个工作簿,创建一个excel文件

//创建HSSFWork对象(excel的文档对象)
 
HSSFWorkbook wb=newHSSFWorkbook();
  //创建HSSFSheet对象(excel表单)
 
HSSFSheet sheet = wb.createSheet("成绩表");
 //创建HSSFRow对象(第一行)
 
HSSFRow row = sheet.createRow(0);
 //创建HSSFCell对象是(excel单元格,参数为列索引,可以在0-255之间的任何一个 )
 
HSSFCell cell=row.createCell(0);
  //设置单元格的值
 
cell.setCellValue("学员考试成绩表");
 //合并单元格CellRangeAddress构造参数一次表示起始行,截止行,起始列,戒指列
sheet.addMergedRegion(new CellRangeAddress(0,0,0,3));
 //创建第二行
 
HSSFRow row1=sheet.createRow(1);
//设置单元格中的内容
 
row1.createCell(0).setCellValue("姓名");
 row1.createCell(1).setCellValue("班级");
 row1.createCell(2).setCellValue("笔试成绩");

 HSSFRow row2=sheet.createRow(2);
 //设置单元格中的内容
 
row2.createCell(0).setCellValue("王敦");
 row2.createCell(1).setCellValue("y2165");
 row2.createCell(2).setCellValue("100");
 //输出Excel文件
 
FileOutputStream output=newFileOutputStream("d:\\workbook.xls");
 wb.write(output);
 output.flush();

 

 

集合导出

HSSFWorkbook wkb=new HSSFWorkbook();
HSSFSheet sheet=wkb.createSheet("成绩表");
//创建第一行
HSSFRow row1=sheet.createRow(0);

 

List<Studnets>list=new ArrayList<Studnets>();

Studnets studnets=new Studnets();
studnets.setSid(1);
studnets.setSname("王");
Studnets studnet=new Studnets();
studnet.setSid(1);
studnet.setSname("王");
list.add(studnet);
list.add(studnets);


HSSFCell cell1 = row1.createCell((short)0);
cell1.setCellValue("学生编号");
cell1=row1.createCell( (short)1);
cell1.setCellValue("学生姓名");
cell1 = row1.createCell((short)2);
cell1.setCellValue("学生性别");

for (shorti = 0; i < list.size(); i++) {
      row1 = sheet.createRow(i + 1);
       row1.createCell(0).setCellValue(list.get(i).getSid());
       row1.createCell(1).setCellValue(list.get(i).getSname());
       }

row1.createCell(0).setCellValue(list.get(i).getSid());
              }