在VBScript中,我需要確保用戶輸入一個整數。VBScript:檢查用戶輸入是否爲整數
這是我現在有:
WScript.Echo "Enter an integer number : "
Number = WScript.StdIn.ReadLine
If IsNumeric(Number) Then
' Here, it still could be an integer or a floating point number
If CLng(Number) Then
WScript.Echo "Integer"
Else
WScript.Echo "Not an integer"
End If
End if
的問題是,CLng函數()不測試,如果我的電話號碼是一個整數:數反正轉換。
有沒有辦法檢查一個數字是否是一個整數?
編輯:
建議的回答沒有工作對我來說也是如此。這裏是我的代碼的新版本:
WScript.Echo "Enter an integer number : "
Number = WScript.StdIn.ReadLine
If IsNumeric(Number) Then
' Here, it still could be an integer or a floating point number
If Number = CLng(Number) Then
WScript.Echo "Integer"
Else
WScript.Echo "Not an integer"
End If
End if
,這裏是輸出:
U:\>cscript //nologo test.vbs
Enter an integer number :
12
Not an integer
U:\>cscript //nologo test.vbs
Enter an integer number :
3.45
Not an integer
IsNumeric有問題。輸入「12,6,14」和IsNumeric返回true,並在CLng語句中拋出異常。 – LarryBud 2016-01-16 22:58:13
'CLng(Number)= Number'將不起作用,因爲操作數具有不同的類型,因此檢查將失敗,請參閱@ cogumel0的回答。 – ViRuSTriNiTy 2016-08-31 16:35:50