excel 文件导出 (冻结窗口)

今天做了一个项目,要把数据库的一部分数据导出到excel中。为了能够让excel能够更好的展示效果,sheet的第一行为标题。然后标题行达到冻结窗口的效果。
一下代码的例子。

workbook= Workbook.createWorkbook(out);
for(int i=0;i<list.size();i++)
{
int rowNumber=i%maxSheetRowSize;//当前sheet的行数。
if(rowNumber==0)//如果大于sheet最大允许的行数,则顺序创建接下来的sheet
{
sheet= workbook.createSheet("sheet"+(sheetNumber+1), sheetNumber);
sheetNumber++;
//设置当前sheet的列标题。
for(int n=0;n<config.getExportColumnNames().size();n++)
{
ExportItem item=(ExportItem)config.getExportColumnNames().get(n);

WritableFont wfc = new WritableFont(WritableFont.TIMES, 10, WritableFont.BOLD, false,
UnderlineStyle.SINGLE_ACCOUNTING, jxl.format.Colour.RED);
WritableCellFormat wcfFC = new WritableCellFormat(wfc);
wcfFC.setAlignment(jxl.format.Alignment.CENTRE);
Label  labelCFC = new Label(n, 0,item.getDisplayName() , wcfFC);

sheet.getSettings().setVerticalFreeze(1);//第一行标题冻结。
CellView cv = new CellView();
cv.setSize(20 * 256);//设置列宽20的像素
sheet.setColumnView(n, cv);
sheet.addCell(labelCFC);

}
}
List record=(List)list.get(i);
for(int n=0;n<record.size();n++)//写入一行数据。从第二行开始写起。
{
sheet.addCell(new Label(n,rowNumber+1,record.get(n).toString()));
}

你可能感兴趣的:(Excel)