java,jsp,javascript中如何实现将统计表格保存成excel文件?
---------------------------------------------------------------
< script language="javascript" >
function automateexcel()
{
var i,j;
// start excel and get application object.
var oxl = new activexobject("excel.application");
oxl.visible = true;
// get a new workbook.
var owb = oxl.workbooks.add();
var osheet = owb.activesheet;
// add table headers going cell by cell.
// tblout表的id
for(i=0;i< tblout.rows.length;i++)
for(j=0;j< tblout.rows(i).cells.length;j++)
osheet.cells(i+1, j+1).value = tblout.rows(i).cells(j).innertext
oxl.visible = true;
oxl.usercontrol = true;
}
< /script >
//这个问题其实你搜一下就有了
---------------------------------------------------------------
首先你的页面上要有一个按钮:save
这个按钮先做查询数据库,然后action转到保存excell的页面,即我给你的这些代码,由于我的是用这个页面是隐藏的,点击save时有跳出界面问你是打开还是保存,xxxxxxxxxxxxxx是你调用数据库的记录,
< %@ 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 > ");
cont.append("< h1 > sop??μμ2é?ˉ?á1?< /h1 >");
cont.append("< table width=′100%′ border=′1′ > ");
cont.append("< tr > ");
cont.append("< td height=′19′ >???to? < /td > ");
cont.append("< td height=′19′ >???t?? < /td > ");
cont.append("< td height=′19′ >2??? < /td > ");
cont.append("< td height=′19′ >éúd§ê±?? < /td > ");
cont.append("< /tr > ");
cont.append("< tr > ");
cont.append("< td >"+xxxxxxxxxxxxxxxxxxxxxxxx +" < /td > ");
cont.append("< td >"+xxxxxxxxxxxxxxxxxxxxxxxx +" < /td > ");
cont.append("< td >"+xxxxxxxxxxxxxxxxxxxxxxxx +" < /td > ");
cont.append("< td >"+xxxxxxxxxxxxxxxxxxxxxxxx +" < /td > ");
cont.append("< /tr > ");
cont.append("< tr > ");
cont.append("< td >"+xxxxxxxxxxxxxxxxxxxxxxxx +" < /td > ");
cont.append("< td >"+xxxxxxxxxxxxxxxxxxxxxxxx +" < /td > ");
cont.append("< td >"+xxxxxxxxxxxxxxxxxxxxxxxx +" < /td > ");
cont.append("< td >"+xxxxxxxxxxxxxxxxxxxxxxxx +" < /td > ");
}
cont.append("< /table > ");
cont.append("< /body >< /html > ");
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 >?têy?y < /p >< /center >< /font >< /span >
< %
}
else if (status < 0) {
% >
< hr color="#6699cc" >
< span class="text" >< font color="red" size="16" >< center >< p >?¢éú′í?ó < /p >< /center >< /font >< /span >
< %
}
% >
< hr color="#6699cc" >
< %
}
catch (exception e){
out.println(e.tostring());
}
% >
< /body >
< /html >
闽公网安备 35060202000074号