怎么获得指定文件夹下的所有文件名称(包括扩展名)

starytx 2005-11-11 09:28:46
我想把相对路径为../image/photo下的所有文件名(都是图片)读取到一个select中,以便用户选择相应的图片,请问怎么读取这些文件名呢?
我搜了一些资料用下边的代码,但提示“路径未找到”,是不是不能用相对路径?我改为一个绝对路径后,又报“类型不匹配‘array1‘”,不知道怎么办了,哪位高手帮帮忙。

<%
Set fs = CreateObject("Scripting.FileSystemObject")
Set f = fs.GetFolder("c:\test")
Set fc = f.Files
i = 0
For Each f1 in fc
array1(i)=f1.name
i=i+1
Next
%>
...全文
228 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhangxiqi 2005-11-14
  • 打赏
  • 举报
回复
up
jspadmin 2005-11-11
  • 打赏
  • 举报
回复
<%
'代码原创者:Jspadmin(飞云)
'个人网站 http://www.pifoo.com 提供免费博客申请
'你可以自由引用或修改本代码,但请保留连接或此注释
'递归算法简单示例,递归遍历指定目录下所有文件和子目录中的文件
set sodir="test" '设置指定目录,如果是整个网站,请设置为"/"或"\"
'set sofile="pifoo.asp" '设置要搜索的文件名
set fso = createobject("scripting.filesystemobject")
response.write "指定目录下所有文件及所有子目录下文件显示如下:" & "<br>"
iterate(server.mappath(sodir))
function iterate(path)
dim folder, folders, files, file
set folder = fso.getfolder(path)
set files = folder.files
for each file in files
'if file.name=sofile then
response.write file.name & "<br>" '显示文件名
'end if
next
set folders = folder.subfolders
for each f in folders
iterate f.path
next
end function
set fso=nothing
%>
----------------------------------------------------------------------------------
欢迎光临我的小站(提供免费博客申请):http://www.pifoo.com,有问题的话,可以在留言本上给我留言http://www.pifoo.com/guestbook/
starytx 2005-11-11
  • 打赏
  • 举报
回复
谢谢,if instr(ucase(NoDisplayType),ucase(fileTyle))=0
是只输出扩展名不是NoDispalyType定义的吧,如果改为<>0是不是就是只输出NoDispalyType定义的扩展名的文件名?
yzyun 2005-11-11
  • 打赏
  • 举报
回复
把相对路径转换成绝对路径:
call GetDirTree(server.mappath(".\images"),0)
starytx 2005-11-11
  • 打赏
  • 举报
回复
请问:必须是绝对路径吗?我改成相对路径就不行了,那如果是绝对路径将来网页上传后可能会受到影响的。
yzyun 2005-11-11
  • 打赏
  • 举报
回复
<%
'不显示的文件类型
dim NoDisplayType
NoDisplayType="jpg,jpeg,gif"

function GetDirTree(mPath,layNo)

set myfso=server.createobject("scripting.filesystemobject")
set myfolder=myfso.getfolder(mPath)
set mySubfolder =myfolder.SubFolders
'当前缩进量
Soujin=replace(Space(layNo)," ","│ ")
'获取当前目录的子目录
for each Folder in mySubfolder
Response.Write Soujin & "├ <B>["& Folder.name & "]</B><br>" & vbcrlf
'Response.Write "<B>["& Folder.path & "]</B><br>"
GetDirTree Folder.path,layNo+1
next
'获取当前目录下面的文件
set myfiles=myfolder.files
for each file in myfiles
fileTyle=myfso.GetExtensionName(file.path)
if instr(ucase(NoDisplayType),ucase(fileTyle))=0 then
Response.Write Soujin & "├ " &file.name & "<br>" & vbcrlf
end if
next

end function

call GetDirTree("E:\WebRoot\Hry",0)
%>
fc_frank 2005-11-11
  • 打赏
  • 举报
回复
<%
Dim array1

Set fs = CreateObject("Scripting.FileSystemObject")
Set f = fs.GetFolder("c:\test")
Set fc = f.Files
i = 0

redim array1(fc.count)
For Each f1 in fc
array1(i)=f1.name
i=i+1
Next
%>
starytx 2005-11-11
  • 打赏
  • 举报
回复
谢谢大家

28,391

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧