我想在经典的asp中从MS EXCEL导入/导出数据。我已经完成了这一部分。但我的问题是,当我们从MS EXCEL导入和导出数据时,我们需要在服务器上安装MS-OFFICE。但是我的客户不想在服务器上安装MS-OFFICE。那么,有没有什么可以不在服务器上安装MS-OFFICE的情况下从Excel导入/导出。
提前感谢
感谢并问候Jelly
发布于 2012-05-24 17:04:13
我在过去已经做过很多次了;-)不幸的是,代码不能这么快地找到。我找到了这个要导入的示例:
<%
Set ExcelConn = Server.CreateObject("ADODB.Connection")
Set ExcelRS = Server.CreateObject("ADODB.Recordset")
ExcelConn.Provider = "Microsoft.Jet.OLEDB.4.0"
ExcelConn.Properties("Extended Properties").Value = "Excel 8.0"
ExcelConn.Open "C:\Sample\Sample.xls"
'get data from sheet
sSQL = "SELECT * FROM Sample$"
set ExcelRS = ExcelConn.Execute(sSQL)
'loop through each record in Excel and write it to access
'might be slow, but will work
Do until ExcelRS.EOF
myConn.Execute("INSERT INTO Sample_tbl(lname,fname,mi) VALUES ('" & ExcelRS("0") & "', '" & ExcelRS("1") & "','" & ExcelRS("2") & "')")
ExcelRS.MoveNext
Loop
ExcelRS.Close
set ExcelRS = NOTHING
objExcelConn.Close
set ExcelConn = NOTHING
objConnAccess.close
set objConnAccess = NOTHING
%>下面是这个导出的小片段,很大程度上归结为添加了正确的内容类型标题:
<%@ Language=VBScript %>
<% Option Explicit
Response.ContentType = "application/vnd.ms-excel"
Response.AddHeader "Content-Disposition", "attachment; filename=sample.xls"
%>
<table>
<tr>
<td>Sample</td>
</tr>
</table>发布于 2012-05-24 14:35:01
我自己没有做过,但我不明白有什么不可以的。
您可以使用MS Jet数据库引擎,该引擎可能已安装在服务器https://stackoverflow.com/a/16051/882436上
或者,您可以使用此组件:http://exceldatareader.codeplex.com/
并通过COM interop (这样你就可以在传统的ASP中使用它)来工作,就像这样:http://msdn.microsoft.com/en-us/library/zsfww439(v=vs.71).aspx
HTH
https://stackoverflow.com/questions/10732029
复制相似问题