将真正长整数字符串转换为INT64

sel*_*S20 -3 vb.net

试图在VB.NET中将数字字符串转换为INT64。我正在测试的号码是12804494279291877304。
我得到的错误是"Value was either too large or too small for an Int64."
下面的代码示例。

BigInt = CLng(EncodeNumber)
Run Code Online (Sandbox Code Playgroud)

the*_*tus 6

它太大,无法在INT64中修复。它适合UINT64。

    Dim v As UInt64

    v = UInt64.Parse("12804494279291877304")
Run Code Online (Sandbox Code Playgroud)

就像@Çö?? x ?? 说,使用TryParse允许使用适当的错误处理。

If Not UInt64.TryParse("12804494279291877304", v) Then
    ' Handle wrong input
End If
Run Code Online (Sandbox Code Playgroud)