<%@ page language="java" pageEncoding="gb2312"%> <%@ page errorPage="error.jsp"%> <%@ page contentType="text/html;charset=gb2312"%> <%@ page import="java.util.*"%> <%@ page import="java.sql.*"%> <%@ page import="java.io.*"%> <%@ page import="org.apache.poi.hssf.usermodel.*,java.text.*,org.apache.poi.poifs.filesystem.POIFSFileSystem"%>
<% response.reset(); String filename = new String(("報表").getBytes(), "ISO-8859-1"); response.setContentType("APPLICATION/OCTET-STREAM"); response.addHeader("Content-Disposition", "attachment;filename=\"" + filename + ".xls\""); DecimalFormat f = new DecimalFormat("#,##0.00"); HSSFWorkbook wb = new HSSFWorkbook(); HSSFSheet sheet = wb.createSheet("sheet1"); // 以下以寫表頭 //表頭為第一行 HSSFRow row = sheet.createRow((short) 0); //定義10列 HSSFCell cell1 = row.createCell((short) 0); HSSFCell cell2 = row.createCell((short) 1); HSSFCell cell3 = row.createCell((short) 2); HSSFCell cell4 = row.createCell((short) 3); HSSFCell cell5 = row.createCell((short) 4); HSSFCell cell6 = row.createCell((short) 5); HSSFCell cell7 = row.createCell((short) 6); HSSFCell cell8 = row.createCell((short) 7); HSSFCell cell9 = row.createCell((short) 8); HSSFCell cell10 = row.createCell((short) 9); HSSFCell cell11 = row.createCell((short) 10); HSSFCell cell12 = row.createCell((short) 11); cell1.setEncoding((short) 1); cell1.setCellType(1); cell2.setEncoding((short) 1); cell2.setCellType(1); cell3.setEncoding((short) 1); cell3.setCellType(1); cell4.setEncoding((short) 1); cell4.setCellType(1); cell5.setEncoding((short) 1); cell5.setCellType(0); cell6.setEncoding((short) 1); cell6.setCellType(1); cell7.setEncoding((short) 1); cell7.setCellType(1); cell8.setEncoding((short) 1); cell8.setCellType(1); cell9.setEncoding((short) 1); cell9.setCellType(1); cell10.setEncoding((short) 1); cell10.setCellType(1); cell11.setEncoding((short) 1); cell11.setCellType(1); cell12.setEncoding((short) 1); cell12.setCellType(1);
//定義表頭的內容 cell1.setCellValue("產(chǎn)品名稱"); cell2.setCellValue("用戶號碼"); cell3.setCellValue("省"); cell4.setCellValue("城市"); cell5.setCellValue("注冊時間"); cell6.setCellValue("退訂時間"); cell7.setCellValue("用戶當前狀態(tài)"); cell8.setCellValue("是否三天免費期"); cell9.setCellValue("本月MT成功條數(shù)"); cell10.setCellValue("本月MT條數(shù)"); cell11.setCellValue("前月MT成功條數(shù)"); cell12.setCellValue("前月MT條數(shù)"); Vector data1 = new Vector(); data1 = getAllData(sql);//從數(shù)據(jù)庫中查詢出的結果集,這部分代碼沒寫 DBDisconnect();
for(int i=0;i<data1.size();i++){ Vector data = new Vector(); data = (Vector)data1.get(i); String array[]; array = new String[data.size()+1]; for (int j=0;j<data.size();j++){ array[j] = data.get(j).toString(); } // 定義數(shù)據(jù)從第二行開始 row = sheet.createRow((short) i+1); cell1 = row.createCell((short) 0); cell2 = row.createCell((short) 1); cell3 = row.createCell((short) 2); cell4 = row.createCell((short) 3); cell5 = row.createCell((short) 4); cell6 = row.createCell((short) 5); cell7 = row.createCell((short) 6); cell8 = row.createCell((short) 7); cell9 = row.createCell((short) 8); cell10 = row.createCell((short) 9); cell11 = row.createCell((short) 10); cell12 = row.createCell((short) 11);
cell1.setEncoding((short) 1); cell1.setCellType(1); cell2.setEncoding((short) 1); cell2.setCellType(1); cell3.setEncoding((short) 1); cell3.setCellType(1); cell4.setEncoding((short) 1); cell4.setCellType(1); cell5.setEncoding((short) 1); cell5.setCellType(0); cell6.setEncoding((short) 1); cell6.setCellType(1); cell7.setEncoding((short) 1); cell7.setCellType(1); cell8.setEncoding((short) 1); cell8.setCellType(1); cell9.setEncoding((short) 1); cell9.setCellType(1); cell10.setEncoding((short) 1); cell10.setCellType(1); cell11.setEncoding((short) 1); cell11.setCellType(1); cell12.setEncoding((short) 1); cell12.setCellType(1); // 填充內容 cell1.setCellValue(array[7]); cell2.setCellValue(array[0]); cell3.setCellValue(array[1]); cell4.setCellValue(array[2]); cell5.setCellValue(array[3]); cell6.setCellValue(array[4]); cell7.setCellValue(array[10]); cell8.setCellValue(array[11]); cell9.setCellValue(array[5]); cell10.setCellValue(array[6]); cell11.setCellValue(array[8]); cell12.setCellValue(array[9]); } wb.write(response.getOutputStream()); response.getOutputStream().flush(); response.getOutputStream().close();
%>
|
|
|