rt
最好帖些代码,时间比较紧!

解决方案 »

  1.   

    有以个叫jxl的开源项目
    专门导cvs格式的,不过个人感觉用起来麻烦。我们用的是以个微软的东西。
      

  2.   

    我感觉extremecomponent在这方面满强大的
      

  3.   

    http://csinfo.blog.hexun.com/4164610_d.html
      

  4.   

    哈哈,我刚生成功一个
    <%@page contentType="text/html"%>
    <%@page pageEncoding="UTF-8"%><%@ page import="java.sql.*" %>
    <%@ page import="java.util.*" %>
    <%@ page import="java.io.*" %>
    <%@ page import="net.sf.jasperreports.engine.JasperFillManager" %>
    <%@ page import="net.sf.jasperreports.engine.JasperPrint"%>
    <%@ page import="net.sf.jasperreports.engine.JRException"%>
    <!--csv Begin-->
    <%@ page import="net.sf.jasperreports.engine.JRExporterParameter"%>
    <%@ page import="net.sf.jasperreports.engine.export.JRCsvExporter"%>
    <%@ page import="net.sf.jasperreports.engine.export.JRCsvExporterParameter"%>
    <!--csv End--><%
        String rowid = "1";
        Connection conn=null;
        String CLASSFORNAME="org.gjt.mm.mysql.Driver";
        String SERVERDB="jdbc:mysql://...............";
        try{                   Class.forName(CLASSFORNAME);
            conn=DriverManager.getConnection(SERVERDB);
        } catch(Exception e){
            e.printStackTrace();
            out.println("Conn:"+SERVERDB+e.toString());
        }    File exe_rpt = new File(application.getRealPath("/WEB-INF/classes/report_1.jasper"));    String dt=null;
        dt=request.getParameter("dt");
        Map parameters = new HashMap();
        parameters.put("sTime",dt);    try{
            // fill
            JasperPrint jasperPrint = JasperFillManager.fillReport(exe_rpt.getPath(),parameters,conn);
            ByteArrayOutputStream oStream = new ByteArrayOutputStream();        JRCsvExporter exporter = new JRCsvExporter();        exporter.setParameter(JRCsvExporterParameter.JASPER_PRINT, jasperPrint);
            exporter.setParameter(JRCsvExporterParameter.OUTPUT_STREAM, oStream);
            exporter.exportReport();        byte[] bytes = oStream.toByteArray();        if(bytes != null && bytes.length > 0) {
                
                String   outFilePath   =   request.getRealPath("ee.csv");
                FileOutputStream   fos   =   new   FileOutputStream(outFilePath);
                fos.write(bytes);            
                fos.close();//生成,写文件结束            
    /*
                response.reset();
                response.setContentType("text/csv");
                response.setContentLength(bytes.length);
     
                ServletOutputStream ouputStream = response.getOutputStream();
                ouputStream.write(bytes,0,bytes.length);
                ouputStream.flush();
                ouputStream.close();直接IE打开*/          }else{
                out.print("bytes were null!");
            }
            conn.close();
        }catch(JRException ex){
            out.print("Jasper Output Error:"+ex.getMessage());
        }%>