Java使用poi组件导出Excel格式数据

  

  

  

POI组件

  

poi组件是由Apache提供的组件包,主要职责是为我们的Java程序提供对于办公室文档的相关操作。本文主要是它对于Excel操作的一个介绍。

  
  

官方主页:http://poi.apache.org/index.html

  

API文档:http://poi.apache.org/apidocs/index.html

     

POI组件基本介绍

  

使用的时候我们可以发现poi组件为我们提供的操作Excel的相关类都是HSSF开头的,这些类主要是在org.apache.poi.hssf.usermodel这个包下面。里面包涵有像Excel的对象,单元格的样式,字体样式以及部分的工具类。一下介绍几个我们常用的类:

  
  
      <李> HSSFWorkbook: Excel对象,相当于一个xls/@顇lsx文件   <李> HSSFSheet:工作表对象,Excel文件包涵的表,一个对象代表一个表单李   <李> HSSFRow:表示表格中的行对象。   <李> HSSFCell:表示表格中的单元格对象。   <李> HSSFHeader: Excel文档表的页眉。   <李> HSSFFooter: Excel文档表的页脚。   <李> HSSFDataFormat:日期格式。   <李> HSSFFont:字体对象。   <李> HSSFCellStyle:单元格样式(对齐样式,边框等)   <李> HSSFComment:批注(注释)。   <李> HSSFPatriarch:和HSSFComment用于创建注释的位置。   <李> HSSFColor:颜色对象。   <李> HSSFDateUtil:日期辅助工具李   <李> HSSFPrintSetup:打印辅助工具李   <李> HSSFErrorConstants:错误信息表   
     

POI组件基本操作

  

1. hssfworkbook创建“Excel文件对象的

     //创建Excel对象   HSSFWorkbook工作簿=new HSSFWorkbook ();      

2。使用工作簿对象创建工作表对象

     //创建工作表单   HSSFSheet表=workbook.createSheet(“对象报表”);之前      

3。创建行和操作单元格对象

     //创建HSSFRow对象(行)   HSSFRow行=sheet.createRow (0);//创建HSSFCell对象(单元格)   HSSFCell细胞=row.createCell (0);//设置单元格的值   cell.setCellValue(“单元格中的中文”);之前      

4。保存Excel文件

     //输出Excel文件   FileOutputStream输出=new FileOutputStream (“d: \ \ workbook.xls”);      workbook.write(输出);      output.flush ();之前      

个性化导出——样式设置

  

这边我列举出部分常用的样式设置的方法!

  

1。合并单元格,设置宽,高

     //实例化样式对象   HSSFCellStyle cellStyle=workbook.createCellStyle ();//两端对齐   cellStyle.setAlignment (HSSFCellStyle.ALIGN_JUSTIFY);//垂直居中   cellStyle.setVerticalAlignment (HSSFCellStyle.VERTICAL_CENTER);//填充图案——填充方式   cellStyle.setFillPattern (HSSFCellStyle.DIAMONDS);//设置前景色(这个要写在背景色的前面)   cellStyle.setFillForegroundColor (HSSFColor.RED.index);//设置背景颜色   cellStyle.setFillBackgroundColor (HSSFColor.LIGHT_YELLOW.index);//设置边框   cellStyle.setBorderBottom (HSSFCellStyle.BORDER_SLANTED_DASH_DOT);//边框颜色   cellStyle.setBottomBorderColor (HSSFColor.DARK_RED.index);//日期展示格式   cellStyle.setDataFormat (HSSFDataFormat。getBuiltinFormat (m/d/h yy: mm”));//将样式应用于单元格   cell.setCellStyle (cellStyle);//将样式应用到行   row.setRowStyle (cellStyle);      

2。设置单元格样式

     //实例化样式对象   HSSFCellStyle cellStyle=workbook.createCellStyle ();//两端对齐   cellStyle.setAlignment (HSSFCellStyle.ALIGN_JUSTIFY);//垂直居中   cellStyle.setVerticalAlignment (HSSFCellStyle.VERTICAL_CENTER);//填充图案——填充方式   cellStyle.setFillPattern (HSSFCellStyle.DIAMONDS);//设置前景色(这个要写在背景色的前面)   cellStyle.setFillForegroundColor (HSSFColor.RED.index);//设置背景颜色   cellStyle.setFillBackgroundColor (HSSFColor.LIGHT_YELLOW.index);//设置边框   cellStyle.setBorderBottom (HSSFCellStyle.BORDER_SLANTED_DASH_DOT);//边框颜色   cellStyle.setBottomBorderColor (HSSFColor.DARK_RED.index);//日期展示格式   cellStyle.setDataFormat (HSSFDataFormat。getBuiltinFormat (m/d/h yy: mm”));//将样式应用于单元格   cell.setCellStyle (cellStyle);//将样式应用到行   row.setRowStyle (cellStyle);      

     //实例化字体对象   HSSFFont fontStyle=workbook.createFont ();//字体   fontStyle.setFontName(“宋体”);//高度   fontStyle.setFontHeightInPoints(12)(短);//字体   font.setColor (HSSFColor.BLUE.index);//加粗   fontStyle.setBoldweight (HSSFFont.BOLDWEIGHT_BOLD);//斜体   font.setItalic(真正的);//下划的线   font.setUnderline (HSSFFont.U_SINGLE);//将字体应用于单元格样式中   cellStyle.setFont(字体);

Java使用poi组件导出Excel格式数据