如何在IE窗口外打开excel文件(100分)

  • 主题发起人 主题发起人 baointoo
  • 开始时间 开始时间
B

baointoo

Unregistered / Unconfirmed
GUEST, unregistred user!
我在开发中用到“导出到excel”的功能,我用POI写入,不过每次打开excel都在IE中,如何在IE外打开呢?

多谢!
 
<<j2ee構建企業系統>>這本書有介紹如何在java中連接dcom
通過dcom來啟動excel
不過挺麻煩的
最簡單方法將excel當成外部應用來調用
只要你用Jakarta POI產生excel存檔就可以在
在jsp中實現excel調用
 
那我是不是先用POI产生excel文件,然后再用另一个jsp调用该excel文件?
多谢了!
 
也是转别人的
<%@ page contentType="text/html;
charset=gb2312" language="java" import="java.sql.*" %>
<%@ page import="jxl.*"%>
<%@ page import="jxl.write.*"%>
<%@ page import="java.io.*"%>
<%@ page import="java.util.*"%>
<jsp:useBean id="conn" class="db.DbConnection" scope="page"/>
<%
String sql=(String)session.getValue("sql");
//String apti=(String)session.getValue("apti");
//select companyapti.companyid,companyapti.companytype,companyapti.companyname,companyinfo.province,companyinfo.city, companyinfo.address,
//companyinfo.connectman,companyinfo.mobile,companyinfo.tel,companyinfo.telephone
%>
<%
try{

WritableWorkbook workbook = Workbook.createWorkbook(new File(request.getRealPath("/")+"/mis/"+"/企业信息.xls"));
//创建Excel工作表
WritableSheet sheet=workbook.createSheet("企业信息",0);
//jxl.write.WritableSheet ws = wwb.createSheet("Test Sheet 1", 0);

//设置字体和格式

//writer data
//while (rs.next()) { //while start
// for(int i=1;i<=23;i++){
// username=rs.getString(1).equals("0")?"":rs.getString(1).trim();

// username="yzhxy2002";
// Label l=new Label(0, 0, username );
// sheet.addCell(l);
//jxl.write.Label labelC = new jxl.write.Label(1, 0, "This is a Label cell");
//sheet.addCell(labelC);
Label n=null,p=null,c=null,a=null,m=null,s=null,t=null,t1=null,t2=null;
String companyid="", apti="",aptiname="",companyname="",companytype="",province="",city="",address="",connectman="",mobile="",tel="",telephone="";
ResultSet rs=null;

//out.print(sql);
rs=conn.executeQuery(sql);
int i=0;
while(rs.next()){
//查询资质
StringTokenizer fenxi=new StringTokenizer(rs.getString("companytype"),"-");
while(fenxi.hasMoreTokens()){
companytype=fenxi.nextToken().toString();
String sql0="select * from aptitype where typeid='"+companytype+"'";
ResultSet rs0=conn.executeQuery(sql0);
if(rs0.next()){
aptiname=new String(rs0.getString("typename").getBytes("iso8859-1") );
}
apti=aptiname+"-"+apti;

}//while
//

n=new Label(0,i,new String(rs.getString("companyname").getBytes("iso8859-1")));
p=new Label(1,i,new String(rs.getString("province").getBytes("iso8859-1")));
c=new Label(2,i,new String(rs.getString("city").getBytes("iso8859-1")));
a=new Label(3,i,new String(rs.getString("address").getBytes("iso8859-1")));
m=new Label(4,i,new String(rs.getString("connectman").getBytes("iso8859-1")));
s=new Label(5,i,rs.getString("mobile"));
t=new Label(6,i,rs.getString("tel"));
t1=new Label(7,i,rs.getString("telephone"));
t2=new Label(8,i,apti);
sheet.addCell(n);sheet.addCell(p);sheet.addCell(c);
sheet.addCell(a);sheet.addCell(m);sheet.addCell(s);sheet.addCell(t);sheet.addCell(t1);
sheet.addCell(t2);
i++;
apti="";
}

//out.print(rs.get(0,2));
//第二个表
// WritableSheet sheet1=workbook.createSheet("资质信息",1);
//companytype

workbook.write();
workbook.close();
// }
// }//while end
}
catch (Exception e)
{
e.printStackTrace();
}
%>
<html>
<head>
<title>操作Excel表</title>
</head>
<body>
<table width="653" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td>&amp;nbsp;</td>
</tr>
<tr>
<td>&amp;nbsp;</td>
</tr>
<tr>
<td height="46"><div align="center"><a href="企业信息.xls"><img src="../images/ziguang.gif" width="32" height="32" border="0">下载企业信息</a></div></td>
</tr>
<tr>
<td><br>
</td>
</tr>
<tr>
<td>&amp;nbsp;</td>
</tr>
</table>
</body>
</html>
 
多人接受答案了。
 
后退
顶部