try{
      FileOutputStream fout=new FileOutputStream("F:/计算机设备信息");
      wb.write(fout);
      fout.flush();
      fout.close();
      }catch(Exception e){
      e.printStackTrace();
      }这是一个点击按钮导出excel的任务。
前面代码已经写好,也能导出,但是导出得是本地文件,怎么能导出成直接打开的xls文件??上面代码怎么修改??而且我导出的文件里有乱码怎么解决??

解决方案 »

  1.   

    OutputStream os = response.getOutputStream(); 输出流,采用这种方式。当你点击的时候,就会弹出对话框了!
      

  2.   

    Response.AddHeader( "Content-Disposition ", "inline;filename= " & saveAsFileName) 
      

  3.   

    给你个方向,你可以考虑用display
      

  4.   

    try{
    //   FileOutputStream fout=new FileOutputStream("F:/计算机设备信息");
       OutputStream fout = response.getOutputStream(); //使用response的输出流
       wb.write(fout);
       fout.flush();
       fout.close();
       }catch(Exception e){
       e.printStackTrace();
       }
      

  5.   

    response.setContentType("application/csv;charset=GB2312");//设置文件格式
    String fileName = "list.csv";
    response.addHeader("Content-Disposition", "attachment;filename=" + fileName);//设置头部信息
     wb.write(fout);response.setCharacterEncoding("GB2312");//设置编码
    response.getOutputStream().flush();
      

  6.   

    response.addHeader("Content-Disposition","attachment;filename=xxx.xls");
    OutputStream fout = response.getOutputStream(); //使用response的输出流
    wb.write(fout);
    fout.flush();
    fout.close();
      

  7.   

    HttpServletResponse response = getContext().getResponse();
    response.setHeader("Content-disposition", "attachment; filename=print.xls");
    BufferedOutputStream bos = new BufferedOutputStream(response.getOutputStream());
    wb.write(bos);
    bos.flush();
    bos.close();
      

  8.   

    关于导出的问题,以上高手的解答了,乱码问题呢,你必须得引用的是apatch 的ant包,不要引用java 的zip ,否则你必须得改api 里 源码,才能解决中文乱码问题。