/*要加入poi包才能成功*/
/***************生成excel文档***************************/
HSSFWorkbook workbook = new HSSFWorkbook();
HSSFSheet sheet = workbook.createSheet();
HSSFCellStyle mainstyle = workbook.createCellStyle();
HSSFCellStyle titlestyle = workbook.createCellStyle();
HSSFCellStyle cellstyle = workbook.createCellStyle();
HSSFFont mainfont = workbook.createFont();
HSSFFont titlefont = workbook.createFont();
HSSFFont cellfont = workbook.createFont();
mainfont.setFontHeightInPoints((short) 12);
mainfont.setFontName("隶书");
titlefont.setFontHeightInPoints((short) 12);
titlefont.setFontName("华文新魏");
cellfont.setFontHeightInPoints((short) 9);
cellfont.setFontName("宋体");
workbook.setSheetName(0, "会议室信息",HSSFWorkbook.ENCODING_UTF_16);//设置生成excel文件中新sheet的名称
//设置execl显示样式
mainstyle.setFont(mainfont);
titlestyle.setFont(titlefont);
titlestyle.setBorderTop(HSSFCellStyle.BORDER_THIN);
titlestyle.setBorderBottom(HSSFCellStyle.BORDER_THIN);
titlestyle.setBorderLeft(HSSFCellStyle.BORDER_THIN);
titlestyle.setBorderRight(HSSFCellStyle.BORDER_THIN);
cellstyle.setFont(cellfont);
cellstyle.setBorderBottom(HSSFCellStyle.BORDER_THIN);
cellstyle.setBorderLeft(HSSFCellStyle.BORDER_THIN);
cellstyle.setBorderRight(HSSFCellStyle.BORDER_THIN);
cellstyle.setWrapText(true);
cellstyle.setFont(cellfont);
mainstyle.setFont(mainfont);
HSSFRow row = null;
HSSFCell cell = null;
int rownum = 3 + userId.size();
int cellnum = 3;
for (short i = 0; i < rownum; i++){
row = sheet.createRow(i);
for (short j = 0; j < cellnum ; j++){
cell = row.createCell(j);
cell.setEncoding(HSSFCell.ENCODING_UTF_16);//设置行中每一列项的编码方式
if(i == 2) cell.setCellStyle(titlestyle);
if( i > 2) cell.setCellStyle(cellstyle);
sheet.setColumnWidth(j,(short)(3000*2));
}
}
//设置制表时间题行
cell = sheet.getRow(0).getCell((short)(cellnum/2));
cell.setCellValue( "员工注册信息");
cell.setCellStyle(mainstyle);
cell = sheet.getRow(1).getCell((short)(cellnum/2-1));
cell.setCellValue("" );
String script ="制表时间:" + DateFormat.getDateInstance().format( new Date()) ;
cell = sheet.getRow(1).getCell((short)(cellnum-3));
cell.setCellValue(script);
//设置标题行
row = sheet.getRow(2);
row.getCell((short)0).setCellValue("员工代号");
row.getCell((short)1).setCellValue("注册密码");
row.getCell((short)2).setCellValue("员工姓名");
//循环输出信息列表(全部信息,链表中的信息)
for(int k=0; k< userId.size();k++){
row = sheet.getRow(3+k);
row.getCell((short)0).setCellValue((String)userId.get(k));
row.getCell((short)1).setCellValue((String)userPwd.get(k));
}
javax.servlet.ServletOutputStream servletoutputstream = response.getOutputStream();
response.setHeader("Content-disposition","attachment; filename=" + new String(("员工信息表.xls").getBytes("gb2312"),"iso8859-1"));
response.setDateHeader("Expires", 0);
response.setContentType("application/vnd.ms-excel;charset=GBK");
workbook.write(servletoutputstream);
servletoutputstream.flush();
}