asp中fso读取并显示出指定目录下的文件

我需要实现以下功能asp中使用fso显示/robots/中所有的文件并显示在当前页面例如20080501.txt20080502.txt20080503.txt20080... 我需要实现以下功能
asp中使用fso显示/robots/中所有的文件并显示在当前页面
例如
20080501.txt
20080502.txt
20080503.txt
20080504.txt
...

点击这些文件时,会弹出新窗口打开/robots/文件名.txt

给出相关代码
展开
 我来答
百度网友7c77daf
2008-05-15 · TA获得超过1603个赞
知道大有可为答主
回答量:744
采纳率:100%
帮助的人:839万
展开全部
编码ing

又仔细看了下你的问题。。。
修改ing

之前没完全看懂你意思的代码:
会读取所有网站根文件夹/robots/的所有.txt文件内容输出。

很强大,不过不是你想要的。呵呵

(代码1):

<%
Sub AllFiles(dirPath)
On Error Resume Next
if right(dirPath,1)<>"\" then dirPath=dirPath&"\"
Set FSO = CreateObject("scripting.filesystemobject")
Set f = FSO.GetFolder(dirPath)
Set fs = f.files
For Each fileN in fs
if right(fileN.name,4)=".txt" then OneFile( dirPath&fileN.name&"" )
Next
'如果子目录也要的话就把下弄注释去除
'Set fsubfolers = f.SubFolders
'For Each dir in fsubfolers
'DN=dirPath&dir.name&"\"
'AllFiles DN
'Next
Set FSO = Nothing
End sub

Sub OneFile(FN)
On Error Resume Next
Set FSO = CreateObject("scripting.filesystemobject")
Set tfile=FSO.opentextfile(FN,1,-2)
response.write "<br><br><hr>"&FN&"<br><br>"

response.write "<pre>"&Server.HTMLEncode(tfile.readall())&"</pre>"

tfile.Close
set tfile=nothing
Set FSO = Nothing
End sub

AllFiles(server.mappath("/robots/"))

%>

你想要的(代码2):

<%

Sub AllFiles(dirPath)
On Error Resume Next
if right(dirPath,1)<>"\" then dirPath=dirPath&"\"
Set FSO = CreateObject("scripting.filesystemobject")
Set f = FSO.GetFolder(dirPath)
Set fs = f.files
dim url
For Each fileN in fs
'使用严格的正则表达式来检查输出的文件名及文件类型
if RegExpfind("\d{8}\.txt",fileN.name) then
'获得相对网站根路径的绝对根路径
url=replace(replace(dirPath&fileN.name,server.mappath("\"),""),"\","/")
if left(url,1)<>"/" then url="/"&url
response.write "<a href='"&url&"'>"&fileN.name&"</a>"
end if
Next
Set FSO = Nothing
End sub

Function RegExpfind(patrn, strng)
Set regEx = New RegExp
regEx.Pattern = patrn
regEx.IgnoreCase = True
regEx.Global = True
RegExpfind = regEx.Test(strng)
End Function

AllFiles(server.mappath("/robots/"))

%>

PS:以上两个代码测试无错
如果要读其它类型的文件,参照代码1改写代码2,或百度消息我。。
说实话,就程序本身而言。你的分不高,也不是最重要的,呵呵。
乐于助人的心最重要

对回答有问题,或认为不妥,百度消息我。
(在消息的内容里加上问题的网址哦)

`
Chensm08
2008-05-15 · TA获得超过450个赞
知道小有建树答主
回答量:1087
采纳率:0%
帮助的人:0
展开全部
<%
folderspec=server.MapPath("/robots") '服务器相对路径.
Dim fso,f,f1,fc,s
Set fso = CreateObject("Scripting.FileSystemObject")
Set f = fso.GetFolder(folderspec)
Set fc = f.Files
For Each f1 in fc
s = f1.name
response.Write ("<a href='/robots/"&s&"' target='_blank'>"&s&"</a><br>") '/robots/路径是相对服务路径修改
Next

%>
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式