欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

ASP FSO显示特殊文件夹的实现代码(畸形目录名、UNC路径)

程序员文章站 2022-04-14 19:02:07
这个目前还是有个别无法显示,翻了下msdn貌似没看到更好的解决方案,暂时放弃继续研究,有晓得完全解决的朋友不妨回复说一声。 先附bat创建畸形目录,以下代码复制另存为a.b...
这个目前还是有个别无法显示,翻了下msdn貌似没看到更好的解决方案,暂时放弃继续研究,有晓得完全解决的朋友不妨回复说一声。
先附bat创建畸形目录,以下代码复制另存为a.bat:
复制代码 代码如下:

md aux\\
md com1\\
md com2\\
md prn\\
md con\\
md nul\\
md dot...\\
md onedot..\\

程序代码
复制代码 代码如下:

<%@language="vbscript" codepage="65001"%>
<%
option explicit
response.charset = "utf-8"
session.codepage = 65001
session.timeout = 1440
server.scripttimeout = 9999
'***************************
'名称:目录列表类
'作者:逸品
'日期:2010-4-28
'网址:www.jb51.net
'描述:目录列表类,支持畸形目录名
'***************************
class fsocls
private fso
public fsoobj
private sub class_initialize
set fso=createobject("scripting.filesystemobject")
set fsoobj=fso
end sub
private sub class_terminate
set fso=nothing
set fsoobj=nothing
end sub
function isfolderexists(folderpath)
if fso.folderexists(folderpath) then
isfolderexists = true
else
isfolderexists = false
end if
end function
function folderitem(byval folderdir)
if instr(folderdir,":\")>0 then
folderdir="\\?\"&folderdir&"\"
else
folderdir="\\?\"&server.mappath(folderdir)&"\"
end if
if isfolderexists(folderdir) = false then
folderitem=false
exit function
end if
dim folderobj,folderlist,f,i
i=1
set folderobj=fso.getfolder(folderdir)
set folderlist=folderobj.subfolders
folderitem="目录总数:"&folderobj.subfolders.count&"<hr>" & vbcrlf
folderitem=folderitem&"文件总数:"&folderobj.files.count&"<hr>" & vbcrlf

for each f in folderlist
'response.write f.shortname
'response.write (instr(1,f.shortname,"~",1))
if isfolderexists(folderdir&f.name) = true then response.write ("t<br>" & vbcrlf)
if(instr(1,f.name,".",0)>0) then
response.write ("t")
f.name=replace(f.name,".","-")
end if
folderitem=folderitem&i&"├─文件夹→"&f.name&"<br>" & vbcrlf
i=i+1
next
set folderlist=nothing
set folderobj=nothing
end function
end class
%>
<!doctype html public "-//w3c//dtd xhtml 1.0 transitional//en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="zh-cn">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>目录列表类 支持畸形目录名</title>
</head>
<body>
<%
dim f: set f = new fsocls
response.write f.folderitem("/")
%>
</body>
</html>