| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 927 人关注过本帖
标题:新建一个文件夹,删除一个文件夹,删除非空文件夹的方法……
只看楼主 加入收藏
qshuju
Rank: 3Rank: 3
等 级:论坛游侠
威 望:3
帖 子:217
专家分:112
注 册:2011-6-9
结帖率:82.14%
收藏
已结贴  问题点数:20 回复次数:9 
新建一个文件夹,删除一个文件夹,删除非空文件夹的方法……
前几天用到了这个问题,在网找到了一些方法,但对于我这样的对C及VFP不是很精通的菜鸟来说有点难理解。
最终找到一个方法,觉得命令很短也很简单。分享一下,请大侠多指导。
新建|删除 一个 文件夹:MKDIR 文件夹路径及文件夹名|  RMDIR 文件夹路径及文件夹名。这个命令在删
除文件夹时,要求文件夹必须为空。这样在通常情况下是不能满足要求的,我要删除的文件夹里面是有内容的。
为了能够删除一个有内容的文件夹,我找到了另外一下方法,如下:

loFSO = Createobject("Scripting.FileSystemObject")
loFSO.DeleteFolder("文件夹路径及文件夹名")

就OK了。其实我对这个命令也不太理解,只是能达到我要的效果。
不知这样有没有行不通的地方,还请各位老师指导。

[ 本帖最后由 qshuju 于 2014-2-10 10:31 编辑 ]
收到的鲜花
  • tlliqi2014-02-10 10:44 送鲜花  20朵   附言:加分鼓励
搜索更多相关主题的帖子: 文件夹 新建 
2014-02-10 10:22
tlliqi
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:204
帖 子:15453
专家分:65956
注 册:2006-4-27
收藏
得分:0 
可以
2014-02-10 10:43
qshuju
Rank: 3Rank: 3
等 级:论坛游侠
威 望:3
帖 子:217
专家分:112
注 册:2011-6-9
收藏
得分:0 
今天使用了,在同一个命令中第二次使用该命令的时候,提示OLE错误了。请老师帮助
2014-02-10 15:09
tlliqi
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:204
帖 子:15453
专家分:65956
注 册:2006-4-27
收藏
得分:0 
以下是引用qshuju在2014-2-10 15:09:31的发言:

今天使用了,在同一个命令中第二次使用该命令的时候,提示OLE错误了。请老师帮助
第二次使用该命令的时候,该文件夹已被删除
所以要加个判断
2014-02-10 15:14
tlliqi
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:204
帖 子:15453
专家分:65956
注 册:2006-4-27
收藏
得分:10 
程序代码:
if directory("c:\asd")
loFSO = Createobject("Scripting.FileSystemObject")
loFSO.DeleteFolder("c:\asd")
MESSAGEBOX("文件夹已删除!")
else
MESSAGEBOX("文件夹不存在!")
endif
2014-02-10 15:22
qshuju
Rank: 3Rank: 3
等 级:论坛游侠
威 望:3
帖 子:217
专家分:112
注 册:2011-6-9
收藏
得分:0 
回复 5楼 tlliqi
我第一次是测试一下文件是否存在,存在就删除,然后再新建。不存在 也是新建。

第二次就是删除上面建立的文件夹。结果没能行通。就用了delete files 先把文件夹里的文件删除,然后用另外一个RM命令删除的。
2014-02-13 15:02
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:10 
以下是引用qshuju在2014-2-13 15:02:53的发言:

我第一次是测试一下文件是否存在,存在就删除,然后再新建。不存在 也是新建。
 
第二次就是删除上面建立的文件夹。结果没能行通。就用了delete files 先把文件夹里的文件删除,然后用另外一个RM命令删除的。

想過如果文件夾中又有文件夾你怎麽刪除那些文件?

授人以渔,不授人以鱼。
2014-02-14 11:47
qshuju
Rank: 3Rank: 3
等 级:论坛游侠
威 望:3
帖 子:217
专家分:112
注 册:2011-6-9
收藏
得分:0 
回复 7楼 TonyDeng
这个文件夹是程序自己建立的。你说的情况应该不存在。
在第一次调用的时候,是可以删除的。
第二次调用这个命令时出错。
所以才用了另一人命令。
你搜了您关于这方面的帖子,好像是调用MSDOS命令来删除,也不太懂,所以也没试用。
2014-02-14 15:08
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
創建了一個脚本(Script)對象又不釋放資源,第二次調用出錯有什麽奇怪的,天知道這個脚本對象在背後幹了什麽。你覺得繞個圈調脚本比直接發出Shell指令好懂,而不願嘗試後者,那就沒什麽好說的了(我不知道你爲什麽願意嘗試同樣不懂的前者)。

授人以渔,不授人以鱼。
2014-02-15 21:13
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
以下是引用qshuju在2014-2-14 15:08:14的发言:

这个文件夹是程序自己建立的。你说的情况应该不存在。

如果沒有子文件夾,何需那麽複雜呢!用delete file *.*把所有文件刪除了,然後rd它即可。調用系統功能無非是爲了回避嵌套文件夾情況下造成的遞歸編程麻煩,既然不存在這種情況,就不需要調用系統功能。你那個使用Script脚本的代碼就是封裝好調用系統Shell指令的,跟我那個用DOS的完全一樣,多裹了一層糖衣(使用ole,其實調用ole是沒辦法之下的辦法,那是效率極低的,選用這種方案要做綜合評估、取捨得失的),在不釋放資源的情況下極可能出錯,因爲做這個封裝程序的程序員有可能在功能使用完後不主動釋放資源,而你作爲用戶調用又不知道需要釋放資源——這就是網上“教程”大多數教人所以然而不知其何以能然的弊端。

[ 本帖最后由 TonyDeng 于 2014-2-15 22:22 编辑 ]

授人以渔,不授人以鱼。
2014-02-15 22:19
快速回复:新建一个文件夹,删除一个文件夹,删除非空文件夹的方法……
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016488 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved