霍钧城吧 关注:6贴子:150
  • 0回复贴,共1
public ActionForward doExcelFile() throws Exception {
ActionContext.getResponse().setHeader("progma", "no-cache");
ActionContext.getResponse().setHeader("Cache-Control", "no-cache");
ActionContext.getResponse().setContentType("text/XML;charset=UTF-8");
HttpServletResponse response = ActionContext.getResponse();
HttpServletRequest request = ActionContext.getRequest();
String myIndexList = request.getParameter("myIndexList");// 模板
String accId = request.getParameter("dataNum");// 数据帐套
String dwValue = request.getParameter("dwValue");// 单位
String beginDate = request.getParameter("beginDate");// 起始时间
String endDate = request.getParameter("endDate");// 结束时间
String corpId = request.getParameter("corpId");
List list = (List) request.getSession().getAttribute("chartLine");
if (list == null) {
list = new ArrayList();
}
//导出报表开始----------------------------------
int result = 0;
String filename="",filepath="";
filename =MyDateUtil.getNowDateByFormat2()+new Date().getTime()+".xls";
filepath = request.getRealPath("\\")+"bank\\currentAnalyse\\file\\";
File files =new File(filepath+filename);
checkDirAndCreate(files);
CurrentAnalyseToExcel et = new CurrentAnalyseToExcel(filepath+filename) ;
et.processorDateContent("趋势分析",list);
result = et.saveExcel();
//导出报表结束---------------------------------
ActionContext.getResponse().setContentType("APPLICATION/OCTET-STREAM");  
    
    //response.setContentType("application/text;charset=UTF-8");
    ActionContext.getResponse().setHeader("Location",filename);
    ActionContext.getResponse().setHeader("Content-Disposition","attachment;filename="+filename);   
    java.io.FileInputStream fileInputStream =  new java.io.FileInputStream(filepath+filename); 
    OutputStream out = ActionContext.getResponse().getOutputStream(); 
    int i;   
    while((i=fileInputStream.read())!=-1){   
        out.write(i);   
    }   
    fileInputStream.close();   
    out.close();   
    File file = new File(filepath+filename);
    if(file.exists()){//下载完后删除服务器上生成的EXCEL
     file.delete();
    }
return null;
}


1楼2009-06-17 17:51回复