在struts1中利用POI把数据源以列表形式导出到excel
/**
* 导出Excel
*
* @param dataList
* 要导出的list
* @param response
* @param mapTitle
* excel标题头
* @param strSheetName
* sheet名称
* @param strFileName
* excel名字
*/
public void exportExcleMethod(List<String[]> dataList,
HttpServletResponse response, String[] title, String strSheetName,
String strFileName) throws Exception {
OutputStream ou = response.getOutputStream();
HSSFWorkbook wb = new HSSFWorkbook();
HSSFSheet sheet = wb.createSheet(strSheetName);
// this.readExcleMethod("", response, sheet, dataList, title);
Row row = sheet.createRow(0);
for (int i = 0; i < title.length; i++) {
Cell cell = row.createCell(i);
cell.setCellValue(title[i]);
}
if (dataList != null && dataList.size() > 0) {
for (int i = 0; i < dataList.size(); i++) {
Row ro = sheet.createRow(i + 1);
String[] s = dataList.get(i);
for (int j = 1; j < s.length; j++) {
Cell cell = ro.createCell(j - 1);
cell.setCellValue(s[j]);
}
}
}
for (int i = 0; i < title.length; i++) {
sheet.autoSizeColumn(i);
}
response.addHeader("Content-Disposition", "attachment;filename="
+ URLEncoder.encode(strFileName + ".xls", "UTF-8"));
response.setContentType("application/msexcel;charset=UTF-8");
wb.write(ou);
ou.close();
}