大家帮忙看看下面的代码,功能:生成一个文本文件,再读出来。谢谢

zrb007 2002-05-08 11:33:33
<%@ Language=VBScript %>
<HTML>
<HEAD>
<META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">
</HEAD>
<BODY>

<%

Call ReadFiles

Sub ReadFiles
Dim fso, f1, ts, s
Const ForReading = 1
Set fso = CreateObject("Scripting.FileSystemObject")
Set f1 = fso.CreateTextFile("c:\testfile.txt", True)
' 写一行。
Response.Write "Writing file <br>"
f1.WriteLine "Hello World"
f1.WriteBlankLines(1)
f1.Close
Response.Write "</br>"
' 读取文件的内容。
Response.Write "Reading file <br>"
Set ts = fso.OpenTextFile("c:\testfile.txt", ForReading)
s = ts.ReadLine
Response.Write "File contents = '"& s &"'"
ts.Close
Response.Write "</br>"
End Sub
%>


<P>abc  </P>

</BODY>
</HTML>
...全文
8 点赞 收藏 14
写回复
14 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
zrb007 2002-05-15
问题知道了,IIS问题,重装系统后好了
回复
suolan 2002-05-09
server.MapPath("/")将返回类似“D:\Inetpub\wwwroot”的绝对磁盘路径,它最后面不包含"\",所以,你的filepath=server.MapPath("/")&"testfile.txt"执行后,filepath="D:\Inetpub\wwwroottestfile.txt",而我们需要的是D:\Inetpub\wwwroot\testfile.txt

你可以在filepath=server.MapPath("/")&"testfile.txt"语句后面,再加一句
response.write filepath,看看是不是这种情况

回复
zrb007 2002-05-09
to suolan(星期二→老鼠应该已经搬家了,证实中..) :
请问我怎么看看我的返回路径, VB我一点不熟悉呀,麻烦了,我刚开始用asp!

回复
julyclyde 2002-05-09
buildpath在这里正合适
回复
wuya0531 2002-05-09
没错啊
回复
suolan 2002-05-09
filepath=server.MapPath("/") & "\testfile.txt"

如果你觉得这样够库,那就用这个吧

filepath= fso.BuildPath("/", "testfile.txt")
回复
suolan 2002-05-09
BuildPath是向当前路径后添加名称,构造出新的路径,用在这里不合适。
回复
julyclyde 2002-05-09
正确方法是用FSO的BuildPath方法来构造路径
回复
zrb007 2002-05-08
谢谢,我试试
回复
zrb007 2002-05-08
谢谢,我试试
回复
Pasp 2002-05-08
怎么了?是不是没有c盘的写权限
写在当前目录是正确的
<%@ Language=VBScript %>
<HTML>
<HEAD>
<META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">
</HEAD>
<BODY>

<%

Call ReadFiles

Sub ReadFiles
Dim fso, f1, ts, s
Const ForReading = 1
Set fso = CreateObject("Scripting.FileSystemObject")
filepath=server.MapPath("/")&"testfile.txt"
Set f1 = fso.CreateTextFile(filepath, True)
' 写一行。
Response.Write "Writing file <br>"
f1.WriteLine "Hello World"
f1.WriteBlankLines(1)
f1.Close
Response.Write "</br>"
' 读取文件的内容。
Response.Write "Reading file <br>"
Set ts = fso.OpenTextFile(filepath, ForReading)
s = ts.ReadLine
Response.Write "File contents = '"& s &"'"
ts.Close
Response.Write "</br>"
End Sub
%>


<P>abc  </P>

</BODY>
</HTML>
回复
shan__le 2002-05-08
要是程序没有问题,那么就是文件目录写入的权限没有给,这样是不能写的
回复
suolan 2002-05-08
不知道你的到了什么错误提示,我把我遇到的给你
第一:把f1.WriteLine "Hello World"改成f1.WriteLine("Hello World")
就是加上括号(是不是不符合VB语法,可是我就是这样解决问题的)

第二:看一下filepath=server.MapPath("/")&"testfile.txt"返回的路径是什么,也许吓你一跳。
回复
zrb007 2002-05-08
还是不行呀
也许是我的IIS不好用了,原来的都打不开了:(
回复
相关推荐
发帖
ASP
创建于2007-09-28

2.8w+

社区成员

ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
申请成为版主
帖子事件
创建了帖子
2002-05-08 11:33
社区公告
暂无公告