devxlogo

Any2Dec – Convert from any numeric base to decimal

Any2Dec – Convert from any numeric base to decimal

' convert from any base to decimal' BASE can be in the range 2-36Function Any2Dec(ByVal otherBaseNumber As String, ByVal base As Integer) As Long    Dim digits As String    Dim digitValue As Long    ' check base    If base  36 Then        Throw New ArgumentException("Base must be in range 2-36")    End If    ' get the list of valid digits    digits = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ".Substring(0, base)    ' convert to decimal    Dim ch As Char    For Each ch In otherBaseNumber.ToUpper()        ' get the digit's value        digitValue = digits.IndexOf(ch)        ' error if invalid digit        If digitValue ' add to running result        Any2Dec = Any2Dec * base + digitValue    NextEnd Function

devx-admin

Share the Post: