对于每个循环:如何跳出条件
for each loop: how to step out of conditions
我一直在创建循环以使用 VBScript 测试文件名。准确地说,我正在尝试执行类似 For Each
循环中的跳转的操作。循环应该测试文件夹中的所有文件,在某些情况下它应该删除一些文件。
但是当 运行 时,它会删除一个文件并尝试针对下一个条件测试已删除的文件。所以我寻找解决方案来结束此检查并跳转到下一个文件,但我找不到有效的解决方案。
for each file in folder.files
if (filename = "foo.bar") then
log.writeline("found foo.bar -> delete!")
fs.deletefile (folder & file.name), true
'exit for
end if
if (isNumeric(firstPosition)) then
if (isNumeric(secondPosition)) then
log.writeline("2 numbers seen -> alright!")
else
log.writeline("Filename is corrupt!")
fs.copyFile file, errorFolder, true
fs.deleteFile file, true
'exit for
end if
end if
使用else
如下:
for each file in folder.files
if (filename = "foo.bar") then
log.writeline("found foo.bar -> delete!")
fs.deletefile (folder & file.name), true
'exit for
else
if (isNumeric(firstPosition)) then
if (isNumeric(secondPosition)) then
log.writeline("2 numbers seen -> alright!")
else
log.writeline("Filename is corrupt!")
fs.copyFile file, errorFolder, true
fs.deleteFile file, true
'exit for
end if
else
end if
end if
next
甚至elseif
如下
for each file in folder.files
if (filename = "foo.bar") then
log.writeline("found foo.bar -> delete!")
fs.deletefile (folder & file.name), true
'exit for
elseif (isNumeric(firstPosition)) then
if (isNumeric(secondPosition)) then
log.writeline("2 numbers seen -> alright!")
else
log.writeline("Filename is corrupt!")
fs.copyFile file, errorFolder, true
fs.deleteFile file, true
'exit for
end if
else
end if
next
VBScript 中没有类似 goto
的语句;只有结构化控制机制。阅读 VBScript User's Guide and VBScript Language Reference
我一直在创建循环以使用 VBScript 测试文件名。准确地说,我正在尝试执行类似 For Each
循环中的跳转的操作。循环应该测试文件夹中的所有文件,在某些情况下它应该删除一些文件。
但是当 运行 时,它会删除一个文件并尝试针对下一个条件测试已删除的文件。所以我寻找解决方案来结束此检查并跳转到下一个文件,但我找不到有效的解决方案。
for each file in folder.files
if (filename = "foo.bar") then
log.writeline("found foo.bar -> delete!")
fs.deletefile (folder & file.name), true
'exit for
end if
if (isNumeric(firstPosition)) then
if (isNumeric(secondPosition)) then
log.writeline("2 numbers seen -> alright!")
else
log.writeline("Filename is corrupt!")
fs.copyFile file, errorFolder, true
fs.deleteFile file, true
'exit for
end if
end if
使用else
如下:
for each file in folder.files
if (filename = "foo.bar") then
log.writeline("found foo.bar -> delete!")
fs.deletefile (folder & file.name), true
'exit for
else
if (isNumeric(firstPosition)) then
if (isNumeric(secondPosition)) then
log.writeline("2 numbers seen -> alright!")
else
log.writeline("Filename is corrupt!")
fs.copyFile file, errorFolder, true
fs.deleteFile file, true
'exit for
end if
else
end if
end if
next
甚至elseif
如下
for each file in folder.files
if (filename = "foo.bar") then
log.writeline("found foo.bar -> delete!")
fs.deletefile (folder & file.name), true
'exit for
elseif (isNumeric(firstPosition)) then
if (isNumeric(secondPosition)) then
log.writeline("2 numbers seen -> alright!")
else
log.writeline("Filename is corrupt!")
fs.copyFile file, errorFolder, true
fs.deleteFile file, true
'exit for
end if
else
end if
next
VBScript 中没有类似 goto
的语句;只有结构化控制机制。阅读 VBScript User's Guide and VBScript Language Reference