FileOutputStream fos = null;
WritableWorkbook wb = null;
String path = AttachHelper.genDateRelaPath("export/");
File baseDir = AttachHelper.getBaseDir(path);
String newName = UUID.randomUUID().toString() + ".xls";
exptPath = path + newName;
logger.debug("相对路径: " + exptPath);
File dest = new File(baseDir, newName);
fos = new FileOutputStream(dest);
wb = Workbook.createWorkbook(fos); //相当于Excel整个文件
WritableSheet sheet = wb.createSheet("sheet1", 0); //生成Excel中的sheet
WritableFont wf = new WritableFont(WritableFont.ARIAL,10,WritableFont.NO_BOLD,false, UnderlineStyle.NO_UNDERLINE,Colour.BLUE);
WritableCellFormat wcf = new WritableCellFormat(wf);
wcf.setVerticalAlignment(VerticalAlignment.CENTRE);
wcf.setAlignment(Alignment.CENTRE);
// 定义表头部分
int colIndex = 0;
for (DataField field : getFields()) {
if(field.getWidth() != null){
sheet.setColumnView(colIndex,field.getWidth()/7);
}
//0代表第一行
Label label = new Label(colIndex++, 0, field.getTitle(), wcf);
sheet.addCell(label);
}
// 设置内容
wcf = new WritableCellFormat();
内容的设置方式和设置表头一样,只是内容要逐行递增
wb.write();
wb.close();
fos.close();