我想检查用户是否提供了有效路径。当路径未以'/'
或'\'
结尾时,我希望通过此脚本添加路径。
if ((RIGHT(@FilePath, 1) <> '\') or (RIGHT(@FilePath, 1) <> '/'))
set @FilePath=@FilePath+'\'
为什么它不起作用,除非我从此声明中删除or (RIGHT(@FilePath, 1) <> '/')
?我的意思是,它每次都会添加'\'
,因为它忽略了表达式,但它只是:
if ((RIGHT(@FilePath, 1) <> '\')
它运作正常。
答案 0 :(得分:1)
当您有'somepath\'
时,条件(RIGHT(@FilePath, 1) <> '/')
为真。
当您有'somepath/'
时,条件(RIGHT(@FilePath, 1) <> '\')
为真。
因此,您将无法获得正确的结果。
试试这个:
if (RIGHT(@FilePath, 1) NOT IN ('\','/'))
set @FilePath=@FilePath+'\'