中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
作者:
标题: 请问~!VBS s="si available"问题 上一主题 | 下一主题
sd287054
初级用户





积分 111
发帖 44
注册 2007-3-12
状态 离线
『楼 主』:  请问~!VBS s="si available"问题

set fs=wscript.createobject("scripting.filesystemobject")

if (fs.folderexists("f:\2"))

s="is available"

else

s="not exist"

set foldr=fs.createfolder("f:\2")

end if  
为什么运行不起来?
还有没搞明白 s="is available"  是什么意思~!请各位大哥解释一下~!


─────────────────── 版务记录 ────────────────────
执行:lxmxn
标题:请问~!VBS新手问题
说明:因标题表述过于模糊,不便于论坛的搜索和管理,请在三日内修改标题。
提示:修改标题请在当前帖的右下脚点 编辑,修改完毕之后按 编辑帖子 即可。
处罚:因属论坛新人,暂时不予处罚;若三日之后尚未修改标题,将扣除2点积分,
   以示惩罚,并由版主强制修改标题。请点击这里阅读论坛发帖规定或者查看
   提问的智慧,以避免在今后的讨论中违规发帖。
─────────────────── 版务记录 ────────────────────


[ Last edited by sd287054 on 2007-5-22 at 12:38 AM ]

2007-5-17 02:18
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
axi
中级用户

脚本爱好者


积分 238
发帖 93
注册 2007-3-11
来自 GZ
状态 离线
『第 2 楼』:  

请注意句子的完整性,给你一个能运行的VBS例子:

set fs=wscript.createobject("scripting.filesystemobject")
if fs.folderexists("c:\temp") then
s=" 文件夹Temp已经存在!"
else
s="文件夹Temp不存在,已经为你创建了此文件夹。"
set f=fs.createfolder("c:\Temp")
end if
Wscript.Echo s


If...Then...Else 语句
根据表达式的值有条件地执行一组语句。

If condition Then statements [Else elsestatements ]

或者,使用块形式的语法:

If condition Then
[statements]
[ElseIf condition-n Then
[elseifstatements]] . . .
[Else
[elsestatements]]
End If

参数
condition

一个或多个下面两种类型的表达式:

数值或字符串表达式,其运算结果是 True 或 False。如果 condition 是 Null,则 condition 被视为 False。

形如 TypeOf objectname Is objecttype 的表达式。objectname 是任何对象的引用,而 objecttype 则是任何有效的对象类型。如果 objectname 是 objecttype 所指定的一种对象类型,则表达式为 True;否则为 False。

Statements

如果 condition 为 True 时,执行的一条或多条(以冒号分开)语句。

condition-n

同 condition。

elseifstatements

如果相关的 condition-n 为 True时,执行的一条或多条语句。

elsestatements

如果前面没有 condition 或 condition-n 表达式为 True 时,执行的一条或多条语句。

说明
对于短小简单的测试,可以使用单行形式(第一种语法)。但块形式(第二种语法)提供了比单行形式更强的结构化与适应性,比较容易阅读、维护及调试。

注意 在单行语法中,可以执行多条语句作为 If...Then 判断的结果,但所有语句必须在同一行上并且以冒号分开,如下列语句所示:

If A > 10 Then A = A + 1 : B = B + A : C = C + B
当程序运行到 If 块(第二种语法)时,将测试 condition。如果 condition 是 True,则执行 Then 之后的语句。如 condition 是 False,则每个 ElseIf 部分的条件式(如果有的话)会依次计算并加以测试。当找到某个为 True 的条件时,则其相关的 Then 之后的语句会被执行。如没有一个 ElseIf 语句是 True(或没有 ElseIf 子句),则将执行 Else 之后的语句。执行 Then 或 Else 之后的语句以后,将继续执行 End If 之后的语句。

Else 和 ElseIf 子句都是可选项的。在 If 块中可以放置任意多个 ElseIf 子句,但是都必须在 Else 子句之前。If 块语句可以被嵌套,即被包含在另一个 If 块语句之中。

要判断某个语句是否是一个 If 块,可检查 Then 关键字之后是什么。如果在 Then 的同一行之后还有其他非注释的内容,则此语句就是单行形式的 If 语句。

If 块语句必须是某一行的第一条语句,并且必须以 End If 语句结束。

[ Last edited by axi on 2007-5-17 at 06:08 PM ]

2007-5-17 06:55
查看资料  发短消息 网志  OICQ (453623262)  编辑帖子  回复  引用回复
ebfok
初级用户





积分 87
发帖 33
注册 2006-6-20
来自 cs
状态 离线
『第 3 楼』:  

Set fs=WScript.CreateObject("scripting.filesystemobject")
If (fs.folderexists("f:\2")) Then
s="is available"
Else
s="not exist"
Set foldr=fs.CreateFolder("f:\2")
End If

"is available": 可用的,意思是“准备好了,已经存在,可以直接使用”

2007-5-17 09:05
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
sd287054
初级用户





积分 111
发帖 44
注册 2007-3-12
状态 离线
『第 4 楼』:  

谢谢,哥哥们了,,~!看明白点了~!

2007-5-17 19:48
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: