一:簡介
利用POI工具可以導出Word,Excel,PPT等office文件
二:程序代碼示例
package com.wang.test;import java.io.File;import java.io.FileOutputStream;import java.util.Calendar;import java.util.Date;import org.apache.poi.hssf.usermodel.HSSFCell;import org.apache.poi.hssf.usermodel.HSSFCellStyle;import org.apache.poi.hssf.usermodel.HSSFDataFormat;import org.apache.poi.hssf.usermodel.HSSFRow;import org.apache.poi.hssf.usermodel.HSSFSheet;import org.apache.poi.hssf.usermodel.HSSFWorkbook;public class Test {public static void main(String[] args) throws Exception{//創建工作簿HSSFWorkbook wb=new HSSFWorkbook();//創建工作表HSSFSheet sheet1=wb.createSheet("first sheet");HSSFSheet sheet2=wb.createSheet("second sheet");//創建rowHSSFRow row=sheet1.createRow(0);//創建單元格HSSFCell cell=row.createCell(0);cell.setCellValue(false);row.createCell(1).setCellValue(Calendar.getInstance());row.createCell(2).setCellValue(new Date());row.createCell(3).setCellValue(123456.654321);String str="abcdefghi";//創建數據格式對象HSSFDataFormat format=wb.createDataFormat();//創建單元格樣式HSSFCellStyle style=wb.createCellStyle();//對日期格式化style.setDataFormat(format.getFormat("yyyy-MM-dd HH:mm:ss"));//應用樣式給單元格row.getCell(1).setCellStyle(style);row.getCell(2).setCellStyle(style);//對double值格式化style=wb.createCellStyle();style.setDataFormat(format.getFormat("#.00"));row.getCell(3).setCellStyle(style);//設置列寬,注意:列寬相對于sheet的。sheet1.setColumnWidth(1, 3000);//也可以自動調節列寬sheet1.autoSizeColumn(2);sheet1.setColumnWidth(4, 7000);//自動回繞文本,把太長的字符串換行顯示row=sheet1.createRow(1);row.createCell(0).setCellValue("左上");row.createCell(1).setCellValue("中間");row.createCell(2).setCellValue("右下");//設置行高row.setHeightInPoints(50);sheet1.setColumnWidth(0, 5000);sheet1.setColumnWidth(1, 5000);sheet1.setColumnWidth(2, 5000);//設置對齊方式--左上style=wb.createCellStyle();style.setAlignment(HSSFCellStyle.ALIGN_LEFT);style.setVerticalAlignment(HSSFCellStyle.VERTICAL_TOP);row.getCell(0).setCellStyle(style);//設置對齊方式--中間style=wb.createCellStyle();style.setAlignment(HSSFCellStyle.ALIGN_CENTER);style.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);row.getCell(1).setCellStyle(style);//設置對齊方式--右下style=wb.createCellStyle();style.setAlignment(HSSFCellStyle.ALIGN_RIGHT);style.setVerticalAlignment(HSSFCellStyle.VERTICAL_BOTTOM);row.getCell(2).setCellStyle(style);//重點:計算列row=sheet1.createRow(3);row.createCell(0).setCellValue(13);row.createCell(1).setCellValue(45);row.createCell(2).setCellValue(25);row.createCell(3).setCellFormula("sum(A4:C4)");//導出到磁盤wb.write(new FileOutputStream(new File("f:/poi.xls")));}}效果:
新聞熱點
疑難解答