public void testMethod() throws Exception{
XSSFWorkbook xfOut = new XSSFWorkbook();
XSSFSheet sheet = xfOut.createSheet();
XSSFRow row = sheet.createRow(0);
XSSFCell cell = row.createCell(0);
cell.setCellValue("test");
cell.getCellStyle().setAlignment(XSSFCellStyle.ALIGN_CENTER);
cell.getCellStyle().setVerticalAlignment(XSSFCellStyle.ALIGN_CENTER);
XSSFFont f = xfOut.createFont();
f.setFontHeightInPoints((short) 30);//字号
f.setBoldweight(XSSFFont.BOLDWEIGHT_NORMAL);//加粗
cell.getCellStyle().setFont(f);
File file = new File("f:\\testPOI.xlsx");
FileOutputStream fos = new FileOutputStream(file);
xfOut.write(fos);
fos.close();
}
内容是显示了,但是样式一点效果也没有,到底哪里出问题了,求教。
我使用4.1.2版本,遇到相似的问题,使用xssfWorkbook.createCellStyle();不要使用cell.getCellStyle(),下面的代码可以参考一下:
@Test
public void testMethod() throws Exception{
XSSFWorkbook xssfWorkbook = new XSSFWorkbook();
XSSFSheet sheet = xssfWorkbook.createSheet();
XSSFRow row = sheet.createRow(0);
XSSFCell cell = row.createCell(0);
cell.setCellValue("test");
XSSFCellStyle cellStyle = xssfWorkbook.createCellStyle();
cellStyle.setAlignment(HorizontalAlignment.CENTER);
cellStyle.setVerticalAlignment(VerticalAlignment.CENTER);
XSSFFont font = xssfWorkbook.createFont();
font.setFontHeightInPoints((short) 30);//字号
font.setBold(true);//加粗
cellStyle.setFont(font);
cell.setCellStyle(cellStyle);
FileOutputStream fos = new FileOutputStream("D:\\AppData\\tmp\\style.xlsx");
xssfWorkbook.write(fos);
xssfWorkbook.close();
}