java——excel学习

  • 单元格合并
CellRangeAddress range = new CellRangeAddress(startRow, endRow, startCol, endCol);
sheet.addMergedRegion(range);
  • 读取行数
    • sheet.getLastRowNum()   返回最后一行的索引,总行数 = row.getLastRowNum()+1   若sheet中一行数据都没有就返回-1
    • row.getLastCellNum()    返回最后一列的索引,总列数 = row.getLastCellNum()   若row中一列数据都没有返回-1
  • Workbook处理兼容
    • HSSFWorkbook只能操作excel2003以下的版本
    • XSSFWorkbook只能操作excel2007以上的版本
    • 所以使用Workbook接口创建对象操作excel处理兼容
  • Excel单元格加添加背景色、边框加粗、字体垂直居中
public static HSSFCellStyle setStyleRedStrong(HSSFWorkbook workbook) {
        HSSFCellStyle style = workbook.createCellStyle();
        style.setAlignment(HSSFCellStyle.ALIGN_CENTER);// 水平居中
        style.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);// 垂直居中
        style.setBorderBottom(HSSFCellStyle.BORDER_THIN);// 下边框
        style.setBorderLeft(HSSFCellStyle.BORDER_THIN);// 左边框
        style.setBorderRight(HSSFCellStyle.BORDER_THIN);// 右边框
        style.setBorderTop(HSSFCellStyle.BORDER_THIN);// 上边框
        style.setFillForegroundColor(HSSFColor.RED.index);
        style.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);
        style.setWrapText(false);//设置自动换行
 		HSSFFont font = workbook.createFont();
 		font.setFontName("宋体");
 		font.setFontHeightInPoints((short) 14);
 		font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);
 		style.setFont(font);
        return style;
    }

CellStyle styleRedStrong = setStyleRedStrong(wb);
cell.setCellStyle(styleRedStrong);
  • 字体加粗
 //字体加粗
private HSSFCellStyle setFontBold(HSSFWorkbook wb) {
	HSSFCellStyle style = wb.createCellStyle();
	style.setAlignment(HSSFCellStyle.ALIGN_CENTER);// 水平居中
	style.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);// 垂直居中
	style.setBorderBottom(HSSFCellStyle.BORDER_THIN);// 下边框
	style.setBorderLeft(HSSFCellStyle.BORDER_THIN);// 左边框
	style.setBorderRight(HSSFCellStyle.BORDER_THIN);// 右边框
	style.setBorderTop(HSSFCellStyle.BORDER_THIN);// 上边框
	HSSFFont font = wb.createFont();
	font.setColor(HSSFColor.BLACK.index);
	font.setFontName("宋体");
 	font.setFontHeightInPoints((short) 14);
	font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);
	style.setFont(font);
	return style;
}

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值