[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[问题求助] 【已解决】VBS如何判断指定文件夹是否存在,不存在则创建该文件夹

本帖最后由 pcl_test 于 2016-7-21 22:35 编辑

fso.createfolder("D:\dotPath")表示创建文件夹
请教添加判断的情况?即如果如果指定路径下没有该文件夹,则创建名为“dotPath”的文件夹,如果有,则无需创建的代码该如何编写?
1

评分人数

    • Batcher: 感谢给帖子标题标注[已解决]字样PB + 2

本帖最后由 tangqingfu 于 2013-5-28 17:21 编辑

回复 2# wankoilz
小弟愚钝,没试成功!
能否请wankoilz兄帮修改一下代码?为创建文件夹添加判断 :如果如果指定路径下没有该文件夹,则创建名为“dotPath”的文件夹,如果有,则无需创建
  1. '//VBS复制U盘Doc文件 @CODE BY Broly
  2. '//声明:此VBS由Broly制作,代码仅作学习研究之用。使用前请三思而行,产生不良后果均与本人无关!
  3. Const DocPath="D:\DotPath\" '此处为你放DOT文件的文件夹,运行前请创建好
  4. Dim fso,Disks
  5. Set fso = CreateObject("Scripting.FileSystemObject")
  6. Set Disks = fso.Drives
  7. For Each Disk In Disks
  8.   If Disk.IsReady And Disk.DriveType = 1 Then
  9.     Udisk=Disk.DriveLetter & ":\"
  10.     U=True
  11.   End if
  12. Next
  13. If U=True Then
  14.   CopyDocs(Udisk)
  15. Else
  16.   Msgbox "没有发现U盘或者U盘没有插好!",vbOkOnly,"提示"
  17.   WScript.Quit
  18. End If
  19. WScript.Quit
  20. Sub CopyDocs(path)
  21.   Dim folder,subfolders,Files
  22.   Set folder = fso.getfolder(path)
  23.   Set subfolders = folder.subfolders
  24.   Set Files = folder.Files
  25.   For Each File In Files
  26.     If fso.GetExtensionName(File.path)="dot" Then
  27.       fso.CopyFile File.Path,DotPath,True '设置为True,表示如果文件存在则覆盖
  28.     End if
  29.   Next
  30.   For Each subfolder In subfolders
  31.       CopyDocs(subfolder.path) '递归查找子目录
  32.   Next
  33. End Sub
复制代码

TOP

期待各位帮解决3楼的问题……

TOP

回复 5# wankoilz
谢谢兄台的指点!
能否请兄台为创建文件夹添加判断 :如果如果指定路径下没有该文件夹,则创建名为“dotPath”的文件夹,如果有,则无需创建

TOP

回复 7# czjt1234
您再运行一次试试,会提示“错误: 文件已存在”。说明没在为创建文件夹加入判断,期待您的解决……

TOP

回复 9# wankoilz

测试通过!谢谢楼上两位!的确是要复制.dot

TOP

回复 13# kqbt
是的,很高兴在这里遇见卡卡兄!bat知识知之甚少,所有度一个金,呵呵!

TOP

返回列表