HSSF实现Excel导出

本文详细介绍如何使用HSSF库创建并导出Excel文件。包括创建工作簿、工作表、行及单元格,并设置了单元格内容、样式、行高及字体等属性。此外,还介绍了如何设置单元格颜色及导出Excel文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

HSSF导出Exl

创建Exl文件、sheet页、行(row)、单元格(cell)

HSSFWorkBook workBook=new HSSFWorkBook();
HSSFSheet sheet=workBook.createSheet();
HSSFRow row0=sheet.createRow(0);
HSSFCell cell=row0.createCell();

给单元格设置内容

cell.setCellValue('这是导出的第一行');

给单元格设置样式
HSSFCellStyle cellStyle= workBook.createCellStyle();
cellStyle.setAlignment(HSSFCellStyle.ALIGN_CENTER); //设置水平居中
cellStyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER); //设置垂直居中
cellStyle.setFillForegroundColor((short) HSSFColor.BLUE.Index);
cellStyle.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND); //设置单元格的颜色
cellStyle.setBorderBottom(HSSFCellStyle.BORDER_THIN);//设置单元格的边框,其他的是top,left,right
cell.setCellStyle(style);


关于HSSFColor的颜色,必须是short类型,因此数据最多不超过64,实际上,这个值介于8-64之间才会生效;
那么,如果HSSFColor给出的颜色都不符合需求,那么就需要自定义颜色了,这里用到HSSFPalette对象

HSSFPalette palette=workBook.createCustomPallete();
palette.setColorAtIndex((short)8,(byte)222,(byte)222,(byte)222);
//第一个参数就是setFillForeGroundColor(short index)中的index,后面的三个分别是三原色 r,g,b

这样设置之后,原先8对应的颜色就会被我们定义的颜色覆盖


设置行高和字体

row.setHightInPoint((short)22); //设置行高

HSSFFont font=workBook.creatFont();
font.setFontHeightInPoint((short)16);
font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);
cellStyle.setFont(font);

注意:
HSSFCellStyle的设置值最好只设置一遍,不然会不起效果,也就是说如果有其他的样式,最好用HSSFWorkBook再实例一个style


设置冻结单元格

sheet.createFreezePane(int col,int row)

看完以上,基本上一个excel的基本功能就能实现了,创建怎样的行,怎么的单元格就看你的需要了,下面来说说导出

导出可以使用文件输出流FileOutputStream
try{
OutputStream outStream=new FileOutputStream(String outPath);
workBook.write(outStream);
outStream.flush();
outStream.close();
}catch(IOException e){
e.printStack();
}

知道了以上内容,基本上就可以满足一个Exl导出需求的实现了!!!!

转载于:https://www.cnblogs.com/hugystudy/p/6740523.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值