转贴:我也能用到
<%@ page contentType="text/html;charset=gb2312" %> 
<%@ page import="java.lang.*"%>
<%
try{                 
  response.setContentType("Application/msexcel");
    response.setHeader("Content-Disposition", "attachment;filename=trainlist.xls");             
StringBuffer cont=new StringBuffer("");
%>
<HTML>
<HEAD>
<META http-equiv="Content-Style-Type" content="text/css">  
</HEAD>
<BODY>
<br><br><br>
<%
int status = khViewBean.getStatus();
if (status == 0){
int rscount = khViewBean.getRSCount();
%>
<%
cont.append("<html><head><META content=\'text/html; charset=gb2312\' http-equiv=Content-Type></head><body>\r\n");
cont.append("<h1>&nbsp;SOP&Icirc;&Auml;&micro;&micro;&sup2;é&Ntilde;&macr;&frac12;á&sup1;&ucirc;</h1>");
cont.append("<table width='100%' border='1'>\r\n");
cont.append("<tr>\r\n");
cont.append("<td height='19'>&Icirc;&Auml;&frac14;&thorn;&ordm;&Aring;&nbsp;</td>\r\n");
cont.append("<td height='19'>&Icirc;&Auml;&frac14;&thorn;&Atilde;&ucirc;&nbsp;</td>\r\n");
cont.append("<td height='19'>&sup2;&iquest;&Atilde;&Aring;&nbsp;</td>\r\n");
cont.append("<td height='19'>&Eacute;ú&ETH;§&Ecirc;±&frac14;&auml;&nbsp;</td>\r\n");
cont.append("</tr>\r\n");
cont.append("<tr>\r\n");
cont.append("<td>"+xxxxxxxxxxxxxxxxxxxxxxxx +"&nbsp;</td>\r\n");
cont.append("<td>"+xxxxxxxxxxxxxxxxxxxxxxxx +"&nbsp;</td>\r\n");
cont.append("<td>"+xxxxxxxxxxxxxxxxxxxxxxxx +"&nbsp;</td>\r\n");
cont.append("<td>"+xxxxxxxxxxxxxxxxxxxxxxxx +"&nbsp;</td>\r\n");
cont.append("</tr>\r\n");
cont.append("<tr>\r\n");
cont.append("<td>"+xxxxxxxxxxxxxxxxxxxxxxxx +"&nbsp;</td>\r\n");
cont.append("<td>"+xxxxxxxxxxxxxxxxxxxxxxxx +"&nbsp;</td>\r\n");
cont.append("<td>"+xxxxxxxxxxxxxxxxxxxxxxxx +"&nbsp;</td>\r\n");
cont.append("<td>"+xxxxxxxxxxxxxxxxxxxxxxxx +"&nbsp;</td>\r\n");
}
cont.append("</table>\r\n");
cont.append("</body></html>\r\n");
response.getWriter().println(cont.toString());
response.getWriter().close();
%>
<% 
}
else if (status > 0) {
%>
<hr color="#6699CC">
<span class="text"><font color="blue" size="16"><center><P>&Icirc;&THORN;&Ecirc;&yacute;&frac34;&Yacute;&nbsp;</P></center></font></span>
<%
}
else if (status < 0) {
%>
<hr color="#6699CC">
<span class="text"><font color="red" size="16"><center><P>·&cent;&Eacute;ú&acute;í&Icirc;ó&nbsp;</P></center></font></span>
<%
}
%> 
<hr color="#6699CC">
<%
}
catch (Exception e){
out.println(e.toString());
}
%>
</BODY>
</HTML>

解决方案 »

  1.   

    首先你的页面上要有一个按钮:save
    这个按钮先做查询数据库,然后action转到保存excell的页面,即我给你的这些代码,由于我的是用这个页面是隐藏的,点击save时有跳出界面问你是打开还是保存,xxxxxxxxxxxxxx是你调用数据库的记录,
      

  2.   

    这是个写excel的例子
    import java.io.*;
    import jxl.*;
    import jxl.format.*;
    import jxl.write.*;/**
     * <p>Title: 个人工具包</p>
     * <p>Description: 示例代码, 向Excel文件中写入工作表</p>
     * <p>Copyright: Copyright (c) 2002</p>
     * <p>Company: Tiger, Ltd.</p>
     * @author Tim
     * @version 1.0
     */class ExcelWriting
    {
        public static void main(String[] args)
        {
            if(!(args.length == 1))
            {
                System.out.println("Usage: java ExcelWriting targetfile");
                System.exit(0);
            }
            String targetfile = args[0];
            try
            {
                //创建可写入的Excel工作薄
                jxl.write.WritableWorkbook wwb = Workbook.createWorkbook(new File(targetfile));            //将Excel工作薄对象写入到输出流
                /*
                OutputStream os = new FileOutputStream(targetfile);
                jxl.write.WritableWorkbook wwb = Workbook.createWorkbook(os);
                */            //创建Excel工作表
                jxl.write.WritableSheet ws = wwb.createSheet("Test Sheet 1", 0);            //向Excel工作表添加内容            //1.添加Label对象
                jxl.write.Label labelC = new jxl.write.Label(0, 0, "This is a Label cell");
                ws.addCell(labelC);            //添加带有字型Formatting的对象
                jxl.write.WritableFont wf = new jxl.write.WritableFont(WritableFont.TIMES, 18, WritableFont.BOLD, true);
                jxl.write.WritableCellFormat wcfF = new jxl.write.WritableCellFormat(wf);
                jxl.write.Label labelCF = new jxl.write.Label(1, 0, "This is a Label Cell", wcfF);
                ws.addCell(labelCF);            //添加带有字体颜色Formatting的对象
                jxl.write.WritableFont wfc = new jxl.write.WritableFont(WritableFont.ARIAL, 10, WritableFont.NO_BOLD, false, UnderlineStyle.NO_UNDERLINE, jxl.format.Colour.RED);
                jxl.write.WritableCellFormat wcfFC = new jxl.write.WritableCellFormat(wfc);
                jxl.write.Label labelCFC = new jxl.write.Label(1, 0, "This is a Label Cell", wcfFC);
                ws.addCell(labelCF);            //2.添加Number对象
                jxl.write.Number labelN = new jxl.write.Number(0, 1, 3.1415926);
                ws.addCell(labelN);            //添加带有formatting的Number对象
                jxl.write.NumberFormat nf = new jxl.write.NumberFormat("#.##");
                jxl.write.WritableCellFormat wcfN = new jxl.write.WritableCellFormat(nf);
                jxl.write.Number labelNF = new jxl.write.Number(1, 1, 3.1415926, wcfN);
                ws.addCell(labelNF);            //3.添加Boolean对象
                jxl.write.Boolean labelB = new jxl.write.Boolean(0, 2, false);
                ws.addCell(labelB);            //4.添加DateTime对象
                jxl.write.DateTime labelDT = new jxl.write.DateTime(0, 3, new java.util.Date());
                ws.addCell(labelDT);            //添加带有formatting的DateFormat对象
                jxl.write.DateFormat df = new jxl.write.DateFormat("dd MM yyyy hh:mm:ss");
                jxl.write.WritableCellFormat wcfDF = new jxl.write.WritableCellFormat(df);
                jxl.write.DateTime labelDTF = new jxl.write.DateTime(1, 3, new java.util.Date(), wcfDF);
                ws.addCell(labelDTF);
                //写入Exel工作表
                wwb.write();            //关闭Excel工作薄对象
                wwb.close();
            }
            catch (Exception e)
            {
                e.printStackTrace();
            }
        }
    }