在vb.net中是否有将字符串转换为整数的函数?

3

我希望将字符串“98”转换为整数98。另外,是否有一种方式指定字符串中包含的值是十六进制的,“98”将被转换为152?

5个回答

7
Convert.ToInt32("98")
Convert.ToInt32("98", 16)

3
我一直是Integer.TryParse的粉丝。.NET 4的文档在这里。该方法通过引用接受整数变量,并返回一个布尔值,指示转换是否成功,因此调用TryParse时无需进行任何错误处理。
如果使用接受NumberStyle的重载函数,则可以指定字符串包含十六进制数。这里是重载版本。

1

您可以使用Parse方法将值转换为整数:

Dim intValue As Integer = Integer.Parse("98")

要将十六进制值转换为十进制,您可以使用AllowHexSpecifier选项:

Dim intValueFromHex As Integer = Integer.Parse("98", Globalization.NumberStyles.AllowHexSpecifier)

如果输入值可能格式不正确,您还可以使用TryParse方法:

Dim intValue as integer
If Integer.TryParse("98", intValue)
    Console.WriteLine(intValue)
Else
    Console.WriteLine("Not an integer value")
End If

1
使用CInt函数将字符串“98”转换为整数98。例如:
Dim MyString As String = "98"
Dim MyInteger As Integer

MyInteger = CInt(MyString)

现在 MyInteger = 98


0

使用十进制表示法(基数为10)进行转换:

Dim value = Convert.ToInt32("98")

或者

Dim value = Integer.Parse("98")

或者

Dim value As Integer
If Integer.TryParse("98", value) Then
  Console.WriteLine(value)
End If

使用十六进制表示法(基数为16)进行转换:

Dim value = Convert.ToInt32("98", 16)

或者

Dim value = Integer.Parse("98", NumberStyles.HexNumber)

或者

Dim value As Integer
If Integer.TryParse("98", NumberStyles.HexNumber, Nothing, value) Then
  Console.WriteLine(value)
End If

NumberStyles 枚举位于 System.Globalization 命名空间中。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接