您现在的位置: 爱51代码网 >> 范文 >> 文章正文
server.mappath如何取得服务器的地址

server.mappath如何取得服务器的地址

代码如下: <!--#include file="adminconn.inc" --> <% '(1) 建立Excel.Application对象  set objExcel=CreateObject("Excel.Application")  '(2) 打开Excel模板  objExcel.Workbooks.Open(server.mappath("\temp")&"\htxx.xlt") '打开Excel模板  objExcel.Sheets(1).select '选中工作页  set sheetActive=objExcel.ActiveWorkbook.ActiveSheet   '(3) Excel的常规添加操作  'sheetActive.range("g4").value=date()  '这里添加的是时间,当然也可以是你指定的任何数据  '(4) Excel中添加数据库中的纪录  '这里假设已有一个数据集adoRset,存放由Sql操作生成的统计数据。  Set adoRset=Server.CreateObject("ADODB.RecordSet")  sql="select * from hetong order by id"    adoRset.open sql,conn,1,1 num=3 '从Excel的第七行开始  do until adoRset.EOF '循环直至数据集中的数据写完  strRange="a"&num&":j"&num '设定要填写内容的单元区域  sheetActive.range(strRange).font.size=10 '设定字体大小  sheetActive.range(strRange).WrapText=false '设定文字回卷  sheetActive.range(strRange).ShrinkToFit=true '设定是否自动适应表格单元大小  sheetActive.range(strRange).value=array(ltrim(trim(adoRset("fenlei"))),ltrim(trim(adoRset("htbh")))&" "&ltrim(trim(adoRset("htbh_bc"))),ltrim(trim(adoRset("htdw"))),ltrim(trim(adoRset("wzmc"))),ltrim(trim(adoRset("htje"))),adoRset("yfk_bl")*100,adoRset("jsk_bl")*100,adoRset("zbj_bl")*100,adoRset("qd_date"),ltrim(trim(adoRset("beizhu"))) ) '把数据集中的数据填写到相应的单元中  num=num+1  adoRset.MoveNext  loop  '(5) Excel临时报表文件的保存及处理  function getTemporaryFile(myFileSystem)   dim tempFile,dotPos  tempFile=myFileSystem.getTempName  dotPos=instr(1,tempFile,".")  getTemporaryFile=mid(tempFile,1,dotPos)&"xls"  end function   set myFs=createObject("scripting.FileSystemObject")  filePos=server.mappath("\temp") & "\tmp\" '要存放打印临时文件的临时目录  fileName=getTemporaryFile(myFs) '取得一个临时文件名  'myFs.DeleteFile filePos&"*.xls" '删除该目录下所有原先产生的临时打印文件  set myFs=nothing  'Excel临时文件的保存代码为:  objExcel.ActiveWorkbook.saveas filePos&filename   '(6) 退出Excel应用  objExcel.quit  set objExcel=Nothing  %>

存在问题:
用此程序可实现导出文件至EXCEL,网络环境下,用客户端机器访问服务器,提示导出成功,然后点击下载导出的文件,提示文件不存在,原因是导出的文件路径显示的是服务器的物理路径(如:d:\web\.....),并非我想要的地址(如:http://10.10.2.1/...).server.mappath行如何写,才能实现这个目的呢。急急急。

不用server.mappath,直接从网站更目录设置路径就行了
其他不变,增加红色的
<%
'(1) 建立Excel.Application对象
set objExcel=CreateObject("Excel.Application")
'(2) 打开Excel模板
objExcel.Workbooks.Open(server.mappath("\temp")&"\htxx.xlt") '打开Excel模板
objExcel.Sheets(1).select '选中工作页
set sheetActive=objExcel.ActiveWorkbook.ActiveSheet 
'(3) Excel的常规添加操作
'sheetActive.range("g4").value=date()  '这里添加的是时间,当然也可以是你指定的任何数据
'(4) Excel中添加数据库中的纪录
'这里假设已有一个数据集adoRset,存放由Sql操作生成的统计数据。
Set adoRset=Server.CreateObject("ADODB.RecordSet")
sql="select * from hetong order by id"
   adoRset.open sql,conn,1,1
num=3 '从Excel的第七行开始
do until adoRset.EOF '循环直至数据集中的数据写完
strRange="a"&num&":j"&num '设定要填写内容的单元区域
sheetActive.range(strRange).font.size=10 '设定字体大小
sheetActive.range(strRange).WrapText=false '设定文字回卷
sheetActive.range(strRange).ShrinkToFit=true '设定是否自动适应表格单元大小
sheetActive.range(strRange).value=array(ltrim(trim(adoRset("fenlei"))),ltrim(trim(adoRset("htbh")))&" "&ltrim(trim(adoRset("htbh_bc"))),ltrim(trim(adoRset("htdw"))),ltrim(trim(adoRset("wzmc"))),ltrim(trim(adoRset("htje"))),adoRset("yfk_bl")*100,adoRset("jsk_bl")*100,adoRset("zbj_bl")*100,adoRset("qd_date"),ltrim(trim(adoRset("beizhu"))) ) '把数据集中的数据填写到相应的单元中
num=num+1
adoRset.MoveNext
loop
'(5) Excel临时报表文件的保存及处理
function getTemporaryFile(myFileSystem) 
dim tempFile,dotPos
tempFile=myFileSystem.getTempName
dotPos=instr(1,tempFile,".")
getTemporaryFile=mid(tempFile,1,dotPos)&"xls"
end function 
set myFs=createObject("scripting.FileSystemObject")
filePos=server.mappath("\temp") & "\tmp\" '要存放打印临时文件的临时目录
fileName=getTemporaryFile(myFs) '取得一个临时文件名
'myFs.DeleteFile filePos&"*.xls" '删除该目录下所有原先产生的临时打印文件
set myFs=nothing
'Excel临时文件的保存代码为:
objExcel.ActiveWorkbook.saveas filePos&filename 
'(6) 退出Excel应用
objExcel.quit
set objExcel=Nothing
%>
<a href="/tmp/<%=filename%>">下载</a>

 

  • 上一篇文章:

  • 下一篇文章: 没有了
  • 最新文章 热点文章 相关文章
    undefined reference timer_crea
    linux文件/usr/lib破坏了,还原后
    linux上运行system函数时,print
    Failed to open eth0
    android手机无法与eclipse或电脑
    C/C++洗牌算法源代码
    servlet技术实现用户名唯一的验证
    E-business suite system servic
    ZOJ 3700 Ever Dream 文章中单词
    TortoiseGit和msysGit安装及使用
    ZOJ 3700 Ever Dream 文章中单词
    TortoiseGit和msysGit安装及使用
    sharepoint 2010 获取用户信息Us
    mysql主从同步延迟方案解决的学习
    生日旅行总结
    中小板生日快乐随感
    送生日快乐桑葚乳酪小蛋糕
    写给女儿的生日快乐
    总分公司财务核算
    恢复使用繁体字可行性研究报告
    在js中动态添加表格行时,怎
    asp动态网站滚动字 如何链接
    Could not load file or ass
    asp.net线程中每隔段时间执行
    ASP.net的Button的背景色为何
    ASP.NET web打印代码
    jquery如何取指定form中的指
    MVC和三层框架的区别是什么
    asp如何判断conn对象是否为空
    如何在vb.net的winform中对于
     



    设为首页 | 加入收藏 | 网站地图 | 友情链接 |