Imports System
Imports Microsoft.VisualBasic
Module HexTest
Dim hexDigits As Char() = {"0"c, "1"c, "2"c, "3"c, "4"c, _
"5"c, "6"c, "7"c, "8"c, "9"c, _
"A"c, "B"c, "C"c, "D"c, "E"c, "F"c}
Function ToHexString(ByVal bytes() As Byte) As String
Dim chars(bytes.Length * 2) As Char
Dim i As Integer
For i = 0 To bytes.Length - 1
Dim b As Integer = bytes(i)
chars((i * 2)) = hexDigits(b >> 4)
chars((i * 2) + 1) = hexDigits(b And &HF)
Next i
Return New String(chars)
End Function
Sub Main()
Dim b As Byte() = {&H0, &H12, &H34, &H56, &HAA, &H55, &HFF}
Console.WriteLine(ToHexString(b))
End Sub
End Module
'
'This code example produces the following results:
'
'00123456AA55FF
'
class HexTest
{
static char[] hexDigits = {
'0', '1', '2', '3', '4', '5', '6', '7',
'8', '9', 'A', 'B', 'C', 'D', 'E', 'F'};
public static string ToHexString(byte[] bytes) {
char[] chars = new char[bytes.Length * 2];
for (int i = 0; i < bytes.Length; i++) {
int b = bytes[i];
chars[i * 2] = hexDigits[b >> 4];
chars[i * 2 + 1] = hexDigits[b & 0xF];
}
return new string(chars);
}
static void Main() {
byte[] b = {0x00, 0x12, 0x34, 0x56, 0xAA, 0x55, 0xFF};
Console.WriteLine(ToHexString(b));
}
}
/*
This code example produces the following results:
00123456AA55FF
*/
ref class HexTest
{
private:
static array<Char>^hexDigits = {'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};
public:
static String^ ToHexString( array<Byte>^bytes )
{
array<Char>^chars = gcnew array<Char>(bytes->Length * 2);
for ( int i = 0; i < bytes->Length; i++ )
{
int b = bytes[ i ];
chars[ i * 2 ] = hexDigits[ b >> 4 ];
chars[ i * 2 + 1 ] = hexDigits[ b & 0xF ];
}
return gcnew String( chars );
}
};
int main()
{
array<Byte>^b = {0x00,0x12,0x34,0x56,0xAA,0x55,0xFF};
Console::WriteLine( HexTest::ToHexString( b ) );
}
/*
This code example produces the following results:
00123456AA55FF
*/
class HexTest
{
private static char hexDigits[] = { '0', '1', '2', '3', '4', '5',
'6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F' };
public static String ToHexString(ubyte bytes[])
{
char chars[] = new char[bytes.get_Length() * 2];
for (int i = 0; i < bytes.get_Length(); i++) {
int b = System.Convert.ToInt32(
System.Convert.ToString(bytes.get_Item(i)));
chars.set_Item((i * 2), hexDigits.get_Item(b >> 4));
chars.set_Item((i * 2 + 1), hexDigits.get_Item(b & 0xF));
}
return new String(chars);
} //ToHexString
public static void main(String[] args)
{
ubyte b[] = { 0x0, 0x12, 0x34, 0x56, 0xAA, 0x55, 0xFF };
Console.WriteLine(ToHexString(b));
} //main
} //HexTest