XSSFSheet对象的格式设置

HSSFCellStyle cellStyle = wb.createCellStyle();    

一、设置背景色:

cellStyle.setFillForegroundColor((short) 13);// 设置背景色    
cellStyle.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND); 

二、设置边框:

cellStyle.setBorderBottom(HSSFCellStyle.BORDER_THIN); //下边框    
cellStyle.setBorderLeft(HSSFCellStyle.BORDER_THIN);//左边框    
cellStyle.setBorderTop(HSSFCellStyle.BORDER_THIN);//上边框    
cellStyle.setBorderRight(HSSFCellStyle.BORDER_THIN);//右边框    

三、设置居中:

cellStyle.setAlignment(HSSFCellStyle.ALIGN_CENTER); // 居中   

四、设置字体:

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);    

cellStyle.setFont(font);//选择需要用到的字体格式   

五、设置列宽:

sheet.setColumnWidth(0, 3766);   
//第一个参数代表列id(从0开始),第2个参数代表宽度值  参考 :"2012-08-10"的宽度为2500    

六、设置自动换行:

cellStyle.setWrapText(true);//设置自动换行   

七、合并单元格:

Region region1 = new Region(0, (short) 0, 0, (short) 6);//参数1:行号 参数2:起始列号 参数3:行号 参数4:终止列号
//此方法在POI3.8中已经被废弃,建议使用下面一个或者用  
CellRangeAddress region1 = new CellRangeAddress(rowNumber, rowNumber, (short) 0, (short) 11);       
//参数1:起始行 参数2:终止行 参数3:起始列 参数4:终止列但应注意两个构造方法的参数不是一样的,具体使用哪个取决于POI的不同版本。
sheet.addMergedRegion(region1);

原文出自:http://blog.youkuaiyun.com/spp_1987/article/details/13769043

Apache POI是一个用于操作Microsoft Office文件(如Excel .xls和.xlsx)的Java API。要通过POI设置Excel单元格的格式,你需要使用`HSSFCell`(对于旧版本的xls)或`XSSFCell`(xlsx)类,以及相关的样式对象。以下是基本步骤: 1. **获取样式引用**: - 对于HSSF,使用`HSSFSheet.createRow(int)`创建行后,可以得到`HSSFCellStyle`,如`HSSFWorkbook.createCellStyle()`。 - 对于XSSF,使用`XSSFSheet.addMergedRegion()`创建合并区域后,会得到`XSSFCellStyle`,如`XSSFWorkbook.createCellStyle()`。 2. **设置格式属性**: - 使用`setAlignment(HorizontalAlignment, VerticalAlignment)`设置对齐方式。 - `setFont(Font)`设置字体。 - `setNumberFormat(String)`设置数字格式,例如`"0.00"`会让数字格式化为两位小数。 - `setColor(IndexedColors.colorName)`设置单元格颜色。 - `setBorder()`设置边框样式。 3. **应用到单元格**: - 创建`HSSFCell`或`XSSFCell`实例。 - 调用`setCellValue(Object value)`填充值。 - 使用`setCellStyle(style)`将刚刚创建的样式应用到该单元格。 4. **写入文件**: - 使用`row.createCell(index, cellType).setCellStyle(style)`将单元格和样式关联起来。 - 最后,将修改后的行添加到sheet,并保存整个workbook到文件。 下面是一段示例代码: ```java import org.apache.poi.ss.usermodel.*; import org.apache.poi.xssf.usermodel.XSSFWorkbook; // ... // 创建一个新的工作簿 Workbook workbook = new XSSFWorkbook(); // 获取工作表 Sheet sheet = workbook.createSheet("Sheet1"); // 创建样式 CellStyle style = workbook.createCellStyle(); style.setAlignment(HorizontalAlignment.CENTER); style.setFont(workbook.createFont().setBold(true)); // 创建单元格并设置格式 Row row = sheet.createRow(0); cell = row.createCell(0); cell.setCellValue("Hello"); cell.setCellStyle(style); // 写入文件 FileOutputStream outputStream = new FileOutputStream("output.xlsx"); workbook.write(outputStream); outputStream.close(); workbook.close();
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值