Visual Basic .NET如何使用用户输入区分String和Integer

时间:2017-05-29 16:00:22

标签: string vb.net visual-studio loops exception

我试图找出如何进行无限循环来验证用户输入是否为字符串。然而,我发现当我通过输入数字来测试程序时,控制台会将字符串视为输入。你怎么纠正这个?

这是我正在处理的代码:

UPDATE `plan` SET `active` = CASE
    WHEN plan = '1 MONTH' THEN CAST(not between date_add(last_payment, interval 1 MONTH) AS SIGNED INTEGER);
    WHEN plan = '3 MONTHS' THEN CAST(not between date_add(last_payment, interval 3 MONTH) AS SIGNED INTEGER);
    WHEN plan = '1 YEAR' THEN CAST(not between date_add(last_payment, interval 1 YEAR) AS SIGNED INTEGER);
    ELSE `1`
    END

2 个答案:

答案 0 :(得分:1)

Console.ReadLine()函数将始终返回一个String值(或者没有,在其他语言中等于null)。

因此,如果您想转换为Integer,您可以使用:

Convert.ToInt32(Console.ReadLine())

如果Console.ReadLine()不是整数,则会抛出异常

答案 1 :(得分:1)

Dim i As Integer
If Integer.TryParse(Console.ReadLine(),i)
  'Good to go
End If