2012-05-08 2 views
0

Можно ли преобразовать строку текста из текстового поля в восьмеричные числа? Если да, то как мне преобразовать восьмеричную в текст и текст в восьмеричную?Как преобразовать строку в восьмеричную в VB.NET?

О, теперь я понимаю, как это работает. Я думал, что гексагон и восьмеричные две разные вещи, но на самом деле это две разные основы. Извините за второй пост.

+0

Что именно вы подразумеваете под «восьмеричными числами»? Пожалуйста, объясните ожидаемые входы и выходы. – Oded

+1

Как и http://stackoverflow.com/questions/10504034/how-do-you-convert-a-string-into-hexadecimal-in-vb-net/10504215#10504215 – Tilak

+0

Договорная база отличается. Но если вы понимаете, как конвертировать в гекса, преобразование в окта тривиально. – Tilak

ответ

4

Вы можете использовать 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. 
+0

Спасибо! Задача решена. –

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.)

+0

, но arent hex и восьмеричные разные? Я использовал конвертер и имел разные результаты –

+0

Они разные - восьмеричные основания 8 и шестнадцатеричные основания 16 – Kogitsune

+0

Согласованные базы разные. Но если вы понимаете, как конвертировать в гекса, преобразование в окта тривиально. – Tilak

Смежные вопросы