如何在VB.NET中将字符串转换为八进制?

时间:2012-05-08 18:27:48

标签: .net vb.net octal

是否可以将文本框中的文本字符串转换为八进制数字?如果是这样,我如何将八进制转换为文本和文本为八进制?

哦,现在我明白它是如何运作的。我认为十六进制和八进制是两个不同的东西,但实际上它是两个不同的基础。对不起,第二篇文章。

2 个答案:

答案 0 :(得分:5)

您可以使用Convert.ToInt32(String, Int32) Method并将8作为基础。

Dim octal As Int32 = Convert.ToInt32(TxtOctalNumber.Text, 8)

第二个参数fromBase

Type: System.Int32
The base of the number in value, which must be 2, 8, 10, or 16. 

答案 1 :(得分:1)

要转换为八进制,请使用Convert.ToInt32(val,8)。 Convert.ToInt32支持有限的基数,分别为2,8,10和16。

要转换为任何基数,

Public Shared Function IntToString(value As Integer, baseChars As Char()) As String
    Dim result As String = String.Empty
    Dim targetBase As Integer = baseChars.Length

    Do
        result = baseChars(value Mod targetBase) + result
        value = value / targetBase
    Loop While value > 0

    Return result
End Function

上述功能来自this question。 C#-to-VB转换使用this完成。 (我已粘贴a similar question的回复。)