日期:2014-05-17  浏览次数:20819 次

在一个ASP页面中获取为什么获取不到同一个变量的值?
该页面的功能是根据上一个页面传过来的变量n打开同名的文件
部分代码如下:

'定义变量
n   =   Request.QueryString( "n ")       '从前一个ASP页面传递过来的值
DataFile =request( "n ")& ".txt "     '该页面可以正确获取n的值
thedatafile=server.MapPath(datafile)

但在后面的程序
if   infile   then
set   thefile=fso.OpenTextFile(thedatafile)
stroldfile=thefile.readall
thefile.close
set   thefile=nothing
中,
fso.OpenTextFile(thedatafile)
为什么thedatafile的值却是为空的?


------解决方案--------------------
是set thedatafile=server.MapPath(datafile) 吧?
------解决方案--------------------
fso.OpenTextFile(thedatafile)中thedatafile的值为空 是什么意思?
你是说在变量thedatafile为空,还是说fso打开这个文件为空?

最好是这样写:
if fso.fileExists(thedatefile) then
set thefile=fso.OpenTextFile(thedatafile)
stroldfile=thefile.readall
thefile.close
set thefile=nothing
else
stroldfile= " "
end if

这样就不会出错