java poi生成excel并修改excel样式
来源:互联网 发布:世纪 时代的正确算法 编辑:程序博客网 时间:2024/04/28 11:57
1、poi生成excel 并设置样式
public void writeData(){
try{
// 创建新的Excel 工作簿
HSSFWorkbook workbook = new HSSFWorkbook();
// 在Excel工作簿中建一工作表,其名为缺省值
// 如要新建一名为"model"的工作表,其语句为:
// HSSFSheet sheet = workbook.createSheet("model");
HSSFSheet sheet = workbook.createSheet();
// 在索引0的位置创建行(最顶端的行)
HSSFRow row = sheet.createRow((short)0);
//在索引0的位置创建单元格(左上端)
HSSFCell cell = row.createCell( 0);
//设置字体样式
HSSFFont font = workbook.createFont();
font.setColor(HSSFFont.COLOR_RED);
font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);
HSSFCellStyle cellStyle= workbook.createCellStyle();
cellStyle.setFont(font);
// 定义单元格为字符串类型
cell.setCellStyle(cellStyle);
// 在单元格中输入一些内容
cell.setCellValue("增加值12");
//循环创建多行
for (int i = 1; i <=10; i++){
row = sheet.createRow(i);
row.createCell(0).setCellValue(i);
}
// 新建一输出文件流
FileOutputStream fileOut = new FileOutputStream("C:\\Users\\dell\\Desktop\\a1.xls");
// 把相应的Excel 工作簿存盘
workbook.write(fileOut);
fileOut.flush();
// 操作结束,关闭文件
fileOut.close();
System.out.println("文件生成...");
}catch(Exception e) {
System.out.println("已运行 xlCreate() : " + e );
}
}
2、需要注意的是,改变原excel(样式、行数、列数等)是需要在workbook.write之后才生效的
3. 设置单元格格式:
在这里,将只介绍一些和格式设置有关的语句,我们假定workbook就是对一个工作簿的引用。在Java中,第一步要做的就是创建和设置字体和单元格的格式,然后再应用这些格式:
3.1 创建字体,设置其为红色、粗体:
HSSFFont font = workbook.createFont();
font.setColor(HSSFFont.COLOR_RED);
font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);
3.2 创建格式
HSSFCellStyle cellStyle= workbook.createCellStyle();
cellStyle.setFont(font);
3.3应用格式
HSSFCell cell = row.createCell((short) 0);
cell.setCellStyle(cellStyle);
cell.setCellType(HSSFCell.CELL_TYPE_STRING);
cell.setCellValue("标题 ");
4.POI中Excel文件单元格的类型
在读取每一个单元格的值的时候,通过getCellType方法获得当前单元格的类型,在Excel中单元格有6种类型,如下所示。
1)CELL_TYPE_BLANK :空值
2)CELL_TYPE_BOOLEAN :布尔型
3)CELL_TYPE_ERROR : 错误
4)CELL_TYPE_FORMULA :公式型
5)CELL_TYPE_STRING:字符串型
6)CELL_TYPE_NUMERIC:数值型
如果单元格的Type为CELL_TYPE_NUMERIC时,还需要进一步判断该单元格的数据格式,因为它有可能是Date类型,在Excel中的Date类型也是以Double类型的数字存储的。Excel中的Date表示当前时间与1900年1月1日相隔的天数,所以需要调用HSSFDateUtil的isCellDateFormatted方法,判断该单元格的数据格式是否是Excel Date类型。如果是,则调用getDateCellValue方法,返回一个Java类型的Date。
因此读取Excel中单元格中的数据时,得判断单元格格式类型,这是我写的,参考一下:
private Object getCellData(Cell cell, FormulaEvaluator formula) {
if(cell == null) {
return null;
}
switch (cell.getCellType()) {
case Cell.CELL_TYPE_STRING:
return cell.getRichStringCellValue().getString();
case Cell.CELL_TYPE_NUMERIC:
if (DateUtil.isCellDateFormatted(cell)) {
return cell.getDateCellValue();
} else {
return cell.getNumericCellValue();
}
case Cell.CELL_TYPE_BOOLEAN:
return cell.getBooleanCellValue();
case Cell.CELL_TYPE_FORMULA:
return formula.evaluate(cell).getNumberValue();
default:
return null;
}
}
- java poi生成excel并修改excel样式
- java用poi 生成excel并单元格,字体,样式
- java生成excel并下载(poi)
- poi生成excel 样式控制
- 使用POI生成Excel文档并设置打印样式
- 使用POI生成Excel文档并设置打印样式
- Java代码用POI读写Excel并修改excel格式
- java poi修改excel
- java poi修改excel
- java poi生成excel
- 使用poi导出excel并调整样式
- 借助POI实现Java生成并打印报表(Excel)
- poi 实现 java生成excel
- java用poi生成excel
- java poi 生成excel模板
- POI 读取并修改 Excel(二)
- poi写入excel并生成文件
- Poi 操作excel样式
- android 三种定位方式
- 10个超有用的网页设计工具和资源
- [android]代码打包混淆
- android 仿google play效果,ListView/GridView下拉刷新,上拉加载更多,自动加载异步请求数据以及分页数据
- 解决Android中Handler警告、SimpleDateFormat警告、"String".toUpperCase()警告
- java poi生成excel并修改excel样式
- Java之内存分析和String对象
- FPGA烧写NIOS ii程序至FLASH(epcs)中
- 深度学习笔记6:Learning color features with Sparse Autoencoders
- SAP_如何获得关于SAP配置表的系统设置的配置TCODE
- Hadoop之——SQOOP笔记
- [android]Android项目一般开发流程
- Linux/ubuntu目录解释
- XML Example With RESTEasy+ JAXB