//获取工做簿 HSSFWorkbook hwb = new HSSFWorkbook(); //获取sheet HSSFSheet sheet = hwb.createSheet(); //获取样式对象 HSSFCellStyle cellStyle = hwb.createCellStyle(); //设置样式对象,这里仅设置了边框属性 cellStyle.setBorderBottom(HSSFCellStyle.BORDER_THIN); //下边框 cellStyle.setBorderLeft(HSSFCellStyle.BORDER_THIN);//左边框 cellStyle.setBorderTop(HSSFCellStyle.BORDER_THIN);//上边框 cellStyle.setBorderRight(HSSFCellStyle.BORDER_THIN);//右边框 //对某一个cell设置边框 row0 = sheet.createRow(i); cell0 = row0.createCell(j); cell0.setCellStyle(style1); cell0.setCellStyle("测试");
这种才是对指定的Cell设置样式(边框),不能获取Cell的样式在进行设置,那样就会将页面上的全部Cell都设置成带边框的,很是难看。。。java
如下转自:http://z3sm2012.iteye.com/blog/1446669测试
POI中可能会用到一些须要设置EXCEL单元格格式的操做小结:字体
先获取工做薄对象:对象
HSSFWorkbook wb = new HSSFWorkbook();blog
HSSFSheet sheet = wb.createSheet();get
HSSFCellStyle setBorder = wb.createCellStyle();it
1、设置背景色:io
setBorder.setFillForegroundColor((short) 13);// 设置背景色
setBorder.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);class
2、设置边框:方法
setBorder.setBorderBottom(HSSFCellStyle.BORDER_THIN); //下边框
setBorder.setBorderLeft(HSSFCellStyle.BORDER_THIN);//左边框
setBorder.setBorderTop(HSSFCellStyle.BORDER_THIN);//上边框
setBorder.setBorderRight(HSSFCellStyle.BORDER_THIN);//右边框
3、设置居中:
setBorder.setAlignment(HSSFCellStyle.ALIGN_CENTER); // 居中
4、设置字体:
HSSFFont font = wb.createFont();
font.setFontName("黑体");
font.setFontHeightInPoints((short) 16);//设置字体大小
HSSFFont font2 = wb.createFont();
font2.setFontName("仿宋_GB2312");
font2.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);//粗体显示
font2.setFontHeightInPoints((short) 12);
setBorder.setFont(font);//选择须要用到的字体格式
5、设置列宽:
sheet.setColumnWidth(0, 3766); //第一个参数表明列id(从0开始),第2个参数表明宽度值
6、设置自动换行:
setBorder.setWrapText(true);//设置自动换行
7、合并单元格:
Region region1 = new Region(0, (short) 0, 0, (short) 6);
//参数1:行号 参数2:起始列号 参数3:行号 参数4:终止列号
或者用
CellRangeAddress region1 = new CellRangeAddress(rowNumber, rowNumber, (short) 0, (short) 11);
但应注意两个构造方法的参数不是同样的,具体使用哪一个取决于POI的不一样版本。sheet.addMergedRegion(region1);