我用poi输出excel文件,要求文件打开时是MS Gothic 11号字体,可现在打开后默认是Arial 10号字体,用
HSSFRow row = sheet.createRow(2); 
HSSFCell cell = row.createCell((short) 2);  
HSSFFont cnFont = wb.createFont();  
cnFont.setFontName("MS Gothic");  
HSSFCellStyle cnStyle = wb.createCellStyle();  
cnStyle.setFont(cnFont);  
cell.setCellStyle(cnStyle); 
只能对单个cell设置style,我想要的是整个文件不管有字和没字的格都是 MS Gothic 11号字体,请问怎么解决?谢谢。

解决方案 »

  1.   

    这style指的就是cell的style,所以肯定是一个个cell设置的,
    在sheet中有一个
    public void setDefaultColumnStyle(int column,  CellStyle style)
    方法,可以设置某列的默认的cellStyle
    但是在HSSFWorkbook中还没有设置默认的style的方法,但是create的style能后重复使用 ,不用每次create
      

  2.   

    谢谢3楼的意见,我们项目经理帮我解决了,先从当前workbook中get出font,
    HSSFFont cnFont = workbook.getfontAt((short)0);  
    再对这个font进行设置就是整个文件的font了.