欢迎访问上海市某某有限公司
上海市某某有限公司专注网站制作10年!为企业打造专业的互联网营销解决方案
全国咨询热线: 18123456789
联系我们

上海市某某有限公司

地址:某某市某某区某某公路666弄66号

手机:18123456789

电话:021-6666666

邮箱:313801120@qq.com

当前位置:首页 > 新闻资讯 > 编程语言 > asp >

ASP中把数据导出为Excel的方法

时间:2022/7/17 20:57:57 作者: 点击:99次

第一种:不使用任何组件。而是将所有导出的数据在网页中以Table进行显示,然后增加如下两行代码,即可实现打开网页后直接下载保存为Excel:
Response.ContentType = "application/vnd.ms-excel"
Response.AddHeader "Content-Disposition", "attachment;filename=xiyueta.xls"

 <% 
 	response.addheader "Content-Type", "text/html; charset=utf-8" 
 	Response.ContentType = "application/vnd.ms-excel" 
 	Response.AddHeader "Content-Disposition", "attachment;filename=TestExcel.xls" 
   
 %> 
 <!DOCTYPE html> 
 <html lang="en"> 
 <head> 
 	<meta charset="UTF-8"> 
 	<meta name="viewport" content="width=device-width, initial-scale=1.0"> 
 	<title>Document</title> 
 </head> 
 <body> 
 	 
  
 <table border="1"> 
 	<tr> 
     	<td style="width:120px">小组名称</td> 
         <td>学生名单</td> 
         <td>所属学院</td> 
         <td>实习景区</td> 
     </tr> 
      
 	<tr> 
     	<td>测试</td> 
         <td>小张</td> 
         <td>华南</td> 
         <td>002</td> 
     </tr> 
   
 </table> 
  
 </body> 
 </html> 
 </pre> 
 <br> 
  
 第二种:使用文件组件,这种方法导出的是文本文件,只不过后缀名改成了xls<br> 
 <pre> 
 <% 
 	response.addheader "Content-Type", "text/html; charset=utf-8" 
 	Set conn=server.CreateObject("adodb.connection") 
 	connstr="provider=microsoft.jet.oledb.4.0;data source="& Server.MapPath("/data/data.mdb") 
 	conn.open connstr	 
   
 	dim s,sql,filename,fs,myfile,x  
 	   
 	Set fs = server.CreateObject("scripting.filesystemobject")  
 	'--假设你想让生成的EXCEL文件做如下的存放  
 	filename = Server.MapPath("xiyueta.xls")  
 	'--如果原来的EXCEL文件存在的话删除它  
 	if fs.FileExists(filename) then  
 	   fs.DeleteFile(filename)  
 	end  if  
 	'--创建EXCEL文件  
 	set myfile = fs.CreateTextFile(filename,true)  
 	    
 	strSql = "select * from xy_admin " 
 	Set rs =conn.execute(strSql) 
 	if not rs.EOF and not rs.BOF then  
 	   dim  strLine,responsestr  
 	   strLine="" 
 	   For each x in rs.fields  
 		 strLine = strLine & x.name & chr(9)  
 	   Next 
 		'--将表的列名先写入EXCEL  
 	   myfile.writeline strLine  
  
 	   Do while Not rs.EOF  
 		 strLine="" 
 		 for each x in rs.Fields  
 		   strLine = strLine & x.value &  chr(9)  
 		 next  
 		 myfile.writeline  strLine  
  
 		 rs.MoveNext:loop  
 	end if:rs.close 
 %> 
 生成EXCEL文件成功,点击 <a href='xiyueta.xls'>下载!</a>