DOBON.NET プログラミング道: .NET Framework, VB.NET, C#, Visual Basic, Visual Studio, インストーラ, ...

16進数、8進数、2進数の文字列を整数に変換する
整数を16進数、8進数、2進数の文字列に変換する

文字列を整数に変換するにはConvertクラスのToInt32メソッドを、整数を文字列に変換するにはConvertクラスのToStringメソッドを使います。しかし、これ以外の方法も考えられます。

以下に一つずつ説明していきます。

16進数の文字列を整数に変換

ConvertクラスのToInt32メソッド等や、Int32構造体等のParseメソッドを使うことにより可能です。

Convert.ToInt32メソッドを使うと、次のようになります。

VB.NET
コードを隠すコードを選択
Dim num16 As Integer = Convert.ToInt32("FFFF", 16)
C#
コードを隠すコードを選択
int num16 = Convert.ToInt32("FFFF", 16);

Int32のParseメソッドを使った例は、次のようなものです。なおConvert.ToInt32では変換する文字列の頭に「0x」を付けることができますが、Int32.Parseでは付けることができません。

VB.NET
コードを隠すコードを選択
Dim num16 As Integer = Integer.Parse("FFFF", _
    System.Globalization.NumberStyles.HexNumber)
C#
コードを隠すコードを選択
int num16 = int.Parse("FFFF",
    System.Globalization.NumberStyles.HexNumber);

VB.NETでは、CInt関数等を使って変換することもできます。

VB.NET
コードを隠すコードを選択
Dim num16 as Integer = CInt("&HFFFF")

整数を16進数の文字列に変換

ConvertクラスのToStringメソッドや、Int32構造体等のToStringメソッドを使います。 Convert.ToStringを使った例は、次の通りです。

VB.NET
コードを隠すコードを選択
Dim num As Integer = 65535
Dim str As String = Convert.ToString(num, 16)
C#
コードを隠すコードを選択
int num = 65535;
string str = Convert.ToString(num, 16);

Int32.ToStringを使うと、次のようになります。

VB.NET
コードを隠すコードを選択
Dim num As Integer = 65535
Dim str As String = num.ToString("X")
C#
コードを隠すコードを選択
int num = 65535;
string str = num.ToString("X");

VB.NETでは、Hex関数を使うこともできます。

VB.NET
コードを隠すコードを選択
Dim num as Integer = 65535
Dim str as String = Hex(num)

8進数の文字列を整数に変換

ConvertクラスのToInt32メソッド等を使うことにより、可能です。

VB.NET
コードを隠すコードを選択
Dim num8 As Integer = Convert.ToInt32("1750", 8)
C#
コードを隠すコードを選択
int num8 = Convert.ToInt32("1750", 8);

VB.NETでは、CInt関数等を使って変換することもできます。

VB.NET
コードを隠すコードを選択
Dim num8 as Integer = CInt("&O1750")

整数を8進数の文字列に変換

ConvertクラスのToStringメソッドにより、可能です。

VB.NET
コードを隠すコードを選択
Dim num As Integer = 1000
Dim str As String = Convert.ToString(num, 8)
C#
コードを隠すコードを選択
int num = 1000;
string str = Convert.ToString(num, 8);

VB.NETでは、Oct関数を使うこともできます。

VB.NET
コードを隠すコードを選択
Dim num as Integer = 1000
Dim str as String = Oct(num)

2進数の文字列を整数に変換

これも、ConvertクラスのToInt32メソッド等を使うことにより、可能です。

VB.NET
コードを隠すコードを選択
Dim num2 As Integer = Convert.ToInt32("1111101000", 2)
C#
コードを隠すコードを選択
int num2 = Convert.ToInt32("1111101000", 2);

整数を2進数の文字列に変換

これも、ConvertクラスのToStringメソッドにより、可能です。

VB.NET
コードを隠すコードを選択
Dim num As Integer = 1000
Dim str As String = Convert.ToString(num, 2)
C#
コードを隠すコードを選択
int num = 1000;
string str = Convert.ToString(num, 2);