poi导出xls使用

poi 常用的xls总结

有部分参考http://blog.csdn.net/sinat_34093604/article/details/53432545
常见说明:
1.excel左上角有绿色小图标说明单元格格式不匹配
2.模板中设置自动计算没效果,需要加上sheet.setForceFormulaRecalculation(true);

FileInputStream fsfs = new FileInputStream("");//使用导出模板文件
POIFSFileSystem ps = new POIFSFileSystem(fs);//使用POI提供的方法得到excel的信息
FileOutputStream out = new FileOutputStream("");//向outFileName中写数据

HSSFWorkbook wb = new HSSFWorkbook(ps);
HSSFDataFormat df = wb.createDataFormat();  //设置数据格式
HSSFSheet sheet = wb.getSheetAt(0);//获取到工作表
sheet.setForceFormulaRecalculation(true);//设置自动计算

HSSFCellStyle sheetStyle1 = wb.createCellStyle();
sheetStyle1.setAlignment(HSSFCellStyle.ALIGN_CENTER);//水平居中
sheetStyle1.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);//垂直居中
sheetStyle1.setBorderBottom(HSSFCellStyle.BORDER_THIN);//下边实线边框
sheetStyle1.setBorderLeft(HSSFCellStyle.BORDER_THIN);//左边实线边框
sheetStyle1.setBorderRight(HSSFCellStyle.BORDER_THIN);//右边实线边框
sheetStyle1.setBorderTop(HSSFCellStyle.BORDER_THIN);//上边实线边框
sheetStyle1.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND); //设置背景色样式:纯色
sheetStyle1.setFillForegroundColor(HSSFColor.GREEN.index);  //设置背景色 黄色
sheetStyle1.setWrapText(true);//自动换行
sheetStyle1.setDataFormat(df.getBuiltinFormat("0.00"));//保留两位小数点

HSSFFont font=wb.createFont();
font.setFontHeightInPoints((short)12);      //设置字号
font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);  //字体增粗
font.setColor(HSSFColor.BLACK.index);//字体颜色
font.setFontName("宋体");
sheetStyle1.setFont(font);

HSSFRow row= sheet.getRow(1);
row.setHeight((short) (15.625*35));//设置行高

//合并单元格
sheet.addMergedRegion(new CellRangeAddress(
        1,//first row (0-based)
        1, //last row (0-based)
        cell-3, //first column (0-based)
        cell-1//last column (0-based)
    ));

out.flush();
wb.write(out);
out.close();

猜你喜欢

转载自blog.csdn.net/u014724487/article/details/78140041