6个回答
展开全部
假设原文件夹为g:\test,目标文件夹为g:\bat,本批处理
将会把g:\test文件夹下(包括子目录)所有同名不同后缀的文件拷贝到g:\bat目录下
且按照不同名字建立相应的文件夹,同名文件就放在对应名称的文件夹内
代码如下:
set
srcfolder=g:\test
set
desfolder=g:\bat
for
/f
"delims="
%%a
in
('dir
"%srcfolder%\*.*"
/a-d
/b
/s')
do
(
md
"%desfolder%\%%~na"
2>nul
xcopy
/y
"%%a"
"%desfolder%\%%~na"
2>nul
)
将会把g:\test文件夹下(包括子目录)所有同名不同后缀的文件拷贝到g:\bat目录下
且按照不同名字建立相应的文件夹,同名文件就放在对应名称的文件夹内
代码如下:
set
srcfolder=g:\test
set
desfolder=g:\bat
for
/f
"delims="
%%a
in
('dir
"%srcfolder%\*.*"
/a-d
/b
/s')
do
(
md
"%desfolder%\%%~na"
2>nul
xcopy
/y
"%%a"
"%desfolder%\%%~na"
2>nul
)
展开全部
如果只是显示指定一个目录或文件夹下的所有文件就简单了,用Dir就可以:
Private Sub Command1_Click()
Dim MyPath As String
Dim MyFile As String
List1.Clear
MyPath = "C:\windows\"
MyFile = Dir(MyPath & "*.*", vbReadOnly Or vbHidden Or vbSystem) '查找指定文件类型
Do While MyFile <> ""
If InStrRev(MyFile, ".") > 0 Then
'有扩展名的文件
'List1.AddItem MyPath & Left(MyFile,InStrRev(MyFile, ".") - 1) '带路径不显示扩展名
'List1.AddItem MyPath & MyFile '带路径显示扩展名
List1.AddItem Left(MyFile, InStrRev(MyFile, ".") - 1) '不带路径不显示扩展名
Else
'没有扩展名的文件
'List1.AddItem MyPath & MyFile '显示带路径的文件
List1.AddItem MyFile '显示不带路径的文件
End If
MyFile = Dir
Loop
End Sub
但,如果要显示指定一个目录或文件夹(包括多重文件夹)下的所有文件,那就不是那么简单了,代码复杂多,要用到递归方式(API)搜索了。
Private Sub Command1_Click()
Dim MyPath As String
Dim MyFile As String
List1.Clear
MyPath = "C:\windows\"
MyFile = Dir(MyPath & "*.*", vbReadOnly Or vbHidden Or vbSystem) '查找指定文件类型
Do While MyFile <> ""
If InStrRev(MyFile, ".") > 0 Then
'有扩展名的文件
'List1.AddItem MyPath & Left(MyFile,InStrRev(MyFile, ".") - 1) '带路径不显示扩展名
'List1.AddItem MyPath & MyFile '带路径显示扩展名
List1.AddItem Left(MyFile, InStrRev(MyFile, ".") - 1) '不带路径不显示扩展名
Else
'没有扩展名的文件
'List1.AddItem MyPath & MyFile '显示带路径的文件
List1.AddItem MyFile '显示不带路径的文件
End If
MyFile = Dir
Loop
End Sub
但,如果要显示指定一个目录或文件夹(包括多重文件夹)下的所有文件,那就不是那么简单了,代码复杂多,要用到递归方式(API)搜索了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
<%
dim rt,f,haha,name1
set rt=server.CreateObject("scripting.filesystemobject")
set f=rt.getfolder("e:\zk")
' 虚拟路径
'set f=rt.getfolder(server.MapPath("\"))
response.Write "路径是:"&f.path&"<br>"
response.Write "类型是:"&f.type&"<br>"
response.Write "名称是:"&f.name&"<br>"
response.Write "大小是:"&f.size&"字节<br>"
response.Write "创建时间是:"&f.datecreated&"<br>"
response.Write "修改时间是:"&f.datelastmodified&"<br>"
response.Write "上次访问时间是:"&f.datelastaccessed&"<br>"
response.Write "浏览:"&"<br>"
for each haha in f.subfolders
response.Write haha&"<br>"
next
for each name1 in f.files
response.Write name1&" "&f.size&"字节<br>"
next
%>
dim rt,f,haha,name1
set rt=server.CreateObject("scripting.filesystemobject")
set f=rt.getfolder("e:\zk")
' 虚拟路径
'set f=rt.getfolder(server.MapPath("\"))
response.Write "路径是:"&f.path&"<br>"
response.Write "类型是:"&f.type&"<br>"
response.Write "名称是:"&f.name&"<br>"
response.Write "大小是:"&f.size&"字节<br>"
response.Write "创建时间是:"&f.datecreated&"<br>"
response.Write "修改时间是:"&f.datelastmodified&"<br>"
response.Write "上次访问时间是:"&f.datelastaccessed&"<br>"
response.Write "浏览:"&"<br>"
for each haha in f.subfolders
response.Write haha&"<br>"
next
for each name1 in f.files
response.Write name1&" "&f.size&"字节<br>"
next
%>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我不用VB的,也不知道怎么写.
用最笨的办法就是循环中得到文件名,然后去掉每个文件名 .和后缀名不就行了?
最后返回一个文件名数组.
用最笨的办法就是循环中得到文件名,然后去掉每个文件名 .和后缀名不就行了?
最后返回一个文件名数组.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
'请先引用 Microsoft Scripting Runtime
Public ObjFso As New FileSystemObject
dim name(),DestPath as string
DestPath = "目录名"
Set objFolder1 = ObjFso.GetFolder(DestPath)
For Each objfolder2 In objFolder1.SubFolders
Name(i)=objfolder2
i=i+1
Next
Public ObjFso As New FileSystemObject
dim name(),DestPath as string
DestPath = "目录名"
Set objFolder1 = ObjFso.GetFolder(DestPath)
For Each objfolder2 In objFolder1.SubFolders
Name(i)=objfolder2
i=i+1
Next
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询