BitConverter.ToString Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Konwertuje wartość liczbową każdego elementu określonej tablicy bajtów na równoważną reprezentację ciągu szesnastkowego.
Przeciążenia
ToString(Byte[]) |
Konwertuje wartość liczbową każdego elementu określonej tablicy bajtów na równoważną reprezentację ciągu szesnastkowego. |
ToString(Byte[], Int32) |
Konwertuje wartość liczbową każdego elementu określonej podtablicy bajtów na równoważną reprezentację ciągu szesnastkowego. |
ToString(Byte[], Int32, Int32) |
Konwertuje wartość liczbową każdego elementu określonej podtablicy bajtów na równoważną reprezentację ciągu szesnastkowego. |
ToString(Byte[])
- Źródło:
- BitConverter.cs
- Źródło:
- BitConverter.cs
- Źródło:
- BitConverter.cs
Konwertuje wartość liczbową każdego elementu określonej tablicy bajtów na równoważną reprezentację ciągu szesnastkowego.
public:
static System::String ^ ToString(cli::array <System::Byte> ^ value);
public static string ToString (byte[] value);
static member ToString : byte[] -> string
Public Shared Function ToString (value As Byte()) As String
Parametry
- value
- Byte[]
Tablica bajtów.
Zwraca
Ciąg par szesnastkowe rozdzielonych łącznikami, gdzie każda para reprezentuje odpowiedni element w value
elemencie , na przykład "7F-2C-4A-00".
Wyjątki
value
to null
.
Przykłady
Poniższy przykład kodu konwertuje Byte tablice na String obiekty za pomocą ToString
metody .
// Example of the BitConverter::ToString( unsigned char[ ] ) method.
using namespace System;
// Display a byte array with a name.
void WriteByteArray( array<unsigned char>^bytes, String^ name )
{
String^ underLine = "--------------------------------";
Console::WriteLine( name );
Console::WriteLine( underLine->Substring( 0, Math::Min( name->Length, underLine->Length ) ) );
Console::WriteLine( BitConverter::ToString( bytes ) );
Console::WriteLine();
}
int main()
{
array<unsigned char>^arrayOne = {0,1,2,4,8,16,32,64,128,255};
array<unsigned char>^arrayTwo = {32,0,0,42,0,65,0,125,0,197,0,168,3,41,4,172,32};
array<unsigned char>^arrayThree = {15,0,0,128,16,39,240,216,241,255,127};
array<unsigned char>^arrayFour = {15,0,0,0,0,16,0,255,3,0,0,202,154,59,255,255,255,255,127};
Console::WriteLine( "This example of the "
"BitConverter::ToString( unsigned char[ ] ) \n"
"method generates the following output.\n" );
WriteByteArray( arrayOne, "arrayOne" );
WriteByteArray( arrayTwo, "arrayTwo" );
WriteByteArray( arrayThree, "arrayThree" );
WriteByteArray( arrayFour, "arrayFour" );
}
/*
This example of the BitConverter::ToString( unsigned char[ ] )
method generates the following output.
arrayOne
--------
00-01-02-04-08-10-20-40-80-FF
arrayTwo
--------
20-00-00-2A-00-41-00-7D-00-C5-00-A8-03-29-04-AC-20
arrayThree
----------
0F-00-00-80-10-27-F0-D8-F1-FF-7F
arrayFour
---------
0F-00-00-00-00-10-00-FF-03-00-00-CA-9A-3B-FF-FF-FF-FF-7F
*/
// Example of the BitConverter.ToString( byte[ ] ) method.
using System;
class BytesToStringDemo
{
// Display a byte array with a name.
public static void WriteByteArray( byte[ ] bytes, string name )
{
const string underLine = "--------------------------------";
Console.WriteLine( name );
Console.WriteLine( underLine.Substring( 0,
Math.Min( name.Length, underLine.Length ) ) );
Console.WriteLine( BitConverter.ToString( bytes ) );
Console.WriteLine( );
}
public static void Main( )
{
byte[ ] arrayOne = {
0, 1, 2, 4, 8, 16, 32, 64, 128, 255 };
byte[ ] arrayTwo = {
32, 0, 0, 42, 0, 65, 0, 125, 0, 197,
0, 168, 3, 41, 4, 172, 32 };
byte[ ] arrayThree = {
15, 0, 0, 128, 16, 39, 240, 216, 241, 255,
127 };
byte[ ] arrayFour = {
15, 0, 0, 0, 0, 16, 0, 255, 3, 0,
0, 202, 154, 59, 255, 255, 255, 255, 127 };
Console.WriteLine( "This example of the " +
"BitConverter.ToString( byte[ ] ) \n" +
"method generates the following output.\n" );
WriteByteArray( arrayOne, "arrayOne" );
WriteByteArray( arrayTwo, "arrayTwo" );
WriteByteArray( arrayThree, "arrayThree" );
WriteByteArray( arrayFour, "arrayFour" );
}
}
/*
This example of the BitConverter.ToString( byte[ ] )
method generates the following output.
arrayOne
--------
00-01-02-04-08-10-20-40-80-FF
arrayTwo
--------
20-00-00-2A-00-41-00-7D-00-C5-00-A8-03-29-04-AC-20
arrayThree
----------
0F-00-00-80-10-27-F0-D8-F1-FF-7F
arrayFour
---------
0F-00-00-00-00-10-00-FF-03-00-00-CA-9A-3B-FF-FF-FF-FF-7F
*/
open System
// Display a byte array with a name.
let writeByteArray (bytes: byte[]) (name: string) =
printfn $"{name}"
printfn $"{String('-', name.Length)}"
printfn $"{BitConverter.ToString bytes}\n"
let arrayOne =
[| 0uy; 1uy; 2uy; 4uy; 8uy; 16uy; 32uy; 64uy; 128uy; 255uy |]
let arrayTwo =
[| 32uy; 0uy; 0uy; 42uy; 0uy; 65uy; 0uy; 125uy; 0uy
197uy; 0uy; 168uy; 3uy; 41uy; 4uy; 172uy; 32uy |]
let arrayThree =
[| 15uy; 0uy; 0uy; 128uy; 16uy; 39uy; 240uy; 216uy; 241uy; 255uy; 127uy |]
let arrayFour =
[| 15uy; 0uy; 0uy; 0uy; 0uy; 16uy; 0uy; 255uy; 3uy; 0uy; 0uy; 202uy
154uy; 59uy; 255uy; 255uy; 255uy; 255uy; 127uy |]
printfn "This example of the BitConverter.ToString(byte []) \nmethod generates the following output.\n"
writeByteArray arrayOne "arrayOne"
writeByteArray arrayTwo "arrayTwo"
writeByteArray arrayThree "arrayThree"
writeByteArray arrayFour "arrayFour"
// This example of the BitConverter.ToString( byte[ ] )
// method generates the following output.
//
// arrayOne
// --------
// 00-01-02-04-08-10-20-40-80-FF
//
// arrayTwo
// --------
// 20-00-00-2A-00-41-00-7D-00-C5-00-A8-03-29-04-AC-20
//
// arrayThree
// ----------
// 0F-00-00-80-10-27-F0-D8-F1-FF-7F
//
// arrayFour
// ---------
// 0F-00-00-00-00-10-00-FF-03-00-00-CA-9A-3B-FF-FF-FF-FF-7F
' Example of the BitConverter.ToString( Byte( ) ) method.
Module BytesToStringDemo
' Display a Byte array with a name.
Sub WriteByteArray( bytes( ) As Byte, name As String )
Const underLine As String = "--------------------------------"
Console.WriteLine( name )
Console.WriteLine( underLine.Substring( 0, _
Math.Min( name.Length, underLine.Length ) ) )
Console.WriteLine( BitConverter.ToString( bytes ) )
Console.WriteLine( )
End Sub
Sub Main( )
Dim arrayOne as Byte( ) = { _
0, 1, 2, 4, 8, 16, 32, 64, 128, 255 }
Dim arrayTwo as Byte( ) = { _
32, 0, 0, 42, 0, 65, 0, 125, 0, 197, _
0, 168, 3, 41, 4, 172, 32 }
Dim arrayThree as Byte( ) = { _
15, 0, 0, 128, 16, 39, 240, 216, 241, 255, _
127 }
Dim arrayFour as Byte( ) = { _
15, 0, 0, 0, 0, 16, 0, 255, 3, 0, _
0, 202, 154, 59, 255, 255, 255, 255, 127 }
Console.WriteLine( "This example of the " & _
"BitConverter.ToString( Byte( ) ) " & vbCrLf & _
"method generates the following output." & vbCrLf )
WriteByteArray( arrayOne, "arrayOne" )
WriteByteArray( arrayTwo, "arrayTwo" )
WriteByteArray( arrayThree, "arrayThree" )
WriteByteArray( arrayFour, "arrayFour" )
End Sub
End Module
' This example of the BitConverter.ToString( Byte( ) )
' method generates the following output.
'
' arrayOne
' --------
' 00-01-02-04-08-10-20-40-80-FF
'
' arrayTwo
' --------
' 20-00-00-2A-00-41-00-7D-00-C5-00-A8-03-29-04-AC-20
'
' arrayThree
' ----------
' 0F-00-00-80-10-27-F0-D8-F1-FF-7F
'
' arrayFour
' ---------
' 0F-00-00-00-00-10-00-FF-03-00-00-CA-9A-3B-FF-FF-FF-FF-7F
Uwagi
Wszystkie elementy value
są konwertowane.
Dotyczy
ToString(Byte[], Int32)
- Źródło:
- BitConverter.cs
- Źródło:
- BitConverter.cs
- Źródło:
- BitConverter.cs
Konwertuje wartość liczbową każdego elementu określonej podtablicy bajtów na równoważną reprezentację ciągu szesnastkowego.
public:
static System::String ^ ToString(cli::array <System::Byte> ^ value, int startIndex);
public static string ToString (byte[] value, int startIndex);
static member ToString : byte[] * int -> string
Public Shared Function ToString (value As Byte(), startIndex As Integer) As String
Parametry
- value
- Byte[]
Tablica bajtów.
- startIndex
- Int32
Pozycja początkowa w obrębie value
.
Zwraca
Ciąg par szesnastkowe rozdzielonych łącznikami, gdzie każda para reprezentuje odpowiedni element w podtablicy wartości value
; na przykład "7F-2C-4A-00".
Wyjątki
value
to null
.
startIndex
jest mniejsza niż zero lub większa niż długość value
minus 1.
Przykłady
Poniższy przykład kodu konwertuje część Byte tablicy rozpoczynającej się od określonej startIndex
do String klasy za ToString
pomocą metody .
// Example of some BitConverter::ToString( ) method overloads.
using namespace System;
// Display a byte array, using multiple lines if necessary.
void WriteMultiLineByteArray( array<unsigned char>^bytes, String^ name )
{
const int rowSize = 20;
String^ underLine = "--------------------------------";
int iter;
Console::WriteLine( name );
Console::WriteLine( underLine->Substring( 0, Math::Min( name->Length, underLine->Length ) ) );
for ( iter = 0; iter < bytes->Length - rowSize; iter += rowSize )
{
Console::Write( BitConverter::ToString( bytes, iter, rowSize ) );
Console::WriteLine( "-" );
}
Console::WriteLine( BitConverter::ToString( bytes, iter ) );
Console::WriteLine();
}
int main()
{
array<unsigned char>^arrayOne = {0,0,0,0,128,63,0,0,112,65,0,255,127,71,0,0,128,59,0,0,128,47,73,70,131,5,75,6,158,63,77,6,158,63,80,6,158,63,30,55,190,121,255,255,127,255,255,127,127,1,0,0,0,192,255,0,0,128,255,0,0,128,127};
array<unsigned char>^arrayTwo = {255,255,255,0,0,20,0,33,0,0,0,1,0,0,0,100,167,179,182,224,13,0,202,154,59,0,143,91,0,170,170,170,170,170,170,0,0,232,137,4,35,199,138,255,232,244,255,252,205,255,255,129};
array<unsigned char>^arrayThree = {0,222,0,0,0,224,111,64,0,0,224,255,255,255,239,65,0,0,131,0,0,0,112,63,0,143,0,100,0,0,240,61,223,136,30,28,254,116,170,1,250,89,140,66,202,192,243,63,251,89,140,66,202,192,243,63,252,89,140,66,202,192,243,63,82,211,187,188,232,126,255,255,255,244,255,239,127,1,0,0,0,10,17,0,0,248,255,0,88,0,91,0,0,240,255,0,0,240,157};
Console::WriteLine( "This example of the\n"
" BitConverter::ToString( unsigned char[ ], int ) and \n"
" BitConverter::ToString( unsigned char[ ], int, int ) \n"
"methods generates the following output.\n" );
WriteMultiLineByteArray( arrayOne, "arrayOne" );
WriteMultiLineByteArray( arrayTwo, "arrayTwo" );
WriteMultiLineByteArray( arrayThree, "arrayThree" );
}
/*
This example of the
BitConverter::ToString( unsigned char[ ], int ) and
BitConverter::ToString( unsigned char[ ], int, int )
methods generates the following output.
arrayOne
--------
00-00-00-00-80-3F-00-00-70-41-00-FF-7F-47-00-00-80-3B-00-00-
80-2F-49-46-83-05-4B-06-9E-3F-4D-06-9E-3F-50-06-9E-3F-1E-37-
BE-79-FF-FF-7F-FF-FF-7F-7F-01-00-00-00-C0-FF-00-00-80-FF-00-
00-80-7F
arrayTwo
--------
FF-FF-FF-00-00-14-00-21-00-00-00-01-00-00-00-64-A7-B3-B6-E0-
0D-00-CA-9A-3B-00-8F-5B-00-AA-AA-AA-AA-AA-AA-00-00-E8-89-04-
23-C7-8A-FF-E8-F4-FF-FC-CD-FF-FF-81
arrayThree
----------
00-DE-00-00-00-E0-6F-40-00-00-E0-FF-FF-FF-EF-41-00-00-83-00-
00-00-70-3F-00-8F-00-64-00-00-F0-3D-DF-88-1E-1C-FE-74-AA-01-
FA-59-8C-42-CA-C0-F3-3F-FB-59-8C-42-CA-C0-F3-3F-FC-59-8C-42-
CA-C0-F3-3F-52-D3-BB-BC-E8-7E-FF-FF-FF-F4-FF-EF-7F-01-00-00-
00-0A-11-00-00-F8-FF-00-58-00-5B-00-00-F0-FF-00-00-F0-9D
*/
// Example of some BitConverter.ToString( ) method overloads.
using System;
class BytesToStringDemo
{
// Display a byte array, using multiple lines if necessary.
public static void WriteMultiLineByteArray( byte[ ] bytes,
string name )
{
const int rowSize = 20;
const string underLine = "--------------------------------";
int iter;
Console.WriteLine( name );
Console.WriteLine( underLine.Substring( 0,
Math.Min( name.Length, underLine.Length ) ) );
for( iter = 0; iter < bytes.Length - rowSize; iter += rowSize )
{
Console.Write(
BitConverter.ToString( bytes, iter, rowSize ) );
Console.WriteLine( "-" );
}
Console.WriteLine( BitConverter.ToString( bytes, iter ) );
Console.WriteLine( );
}
public static void Main( )
{
byte[ ] arrayOne = {
0, 0, 0, 0, 128, 63, 0, 0, 112, 65,
0, 255, 127, 71, 0, 0, 128, 59, 0, 0,
128, 47, 73, 70, 131, 5, 75, 6, 158, 63,
77, 6, 158, 63, 80, 6, 158, 63, 30, 55,
190, 121, 255, 255, 127, 255, 255, 127, 127, 1,
0, 0, 0, 192, 255, 0, 0, 128, 255, 0,
0, 128, 127 };
byte[ ] arrayTwo = {
255, 255, 255, 0, 0, 20, 0, 33, 0, 0,
0, 1, 0, 0, 0, 100, 167, 179, 182, 224,
13, 0, 202, 154, 59, 0, 143, 91, 0, 170,
170, 170, 170, 170, 170, 0, 0, 232, 137, 4,
35, 199, 138, 255, 232, 244, 255, 252, 205, 255,
255, 129 };
byte[ ] arrayThree = {
0, 222, 0, 0, 0, 224, 111, 64, 0, 0,
224, 255, 255, 255, 239, 65, 0, 0, 131, 0,
0, 0, 112, 63, 0, 143, 0, 100, 0, 0,
240, 61, 223, 136, 30, 28, 254, 116, 170, 1,
250, 89, 140, 66, 202, 192, 243, 63, 251, 89,
140, 66, 202, 192, 243, 63, 252, 89, 140, 66,
202, 192, 243, 63, 82, 211, 187, 188, 232, 126,
255, 255, 255, 244, 255, 239, 127, 1, 0, 0,
0, 10, 17, 0, 0, 248, 255, 0, 88, 0,
91, 0, 0, 240, 255, 0, 0, 240, 157 };
Console.WriteLine( "This example of the\n" +
" BitConverter.ToString( byte[ ], int ) and \n" +
" BitConverter.ToString( byte[ ], int, int ) \n" +
"methods generates the following output.\n" );
WriteMultiLineByteArray( arrayOne, "arrayOne" );
WriteMultiLineByteArray( arrayTwo, "arrayTwo" );
WriteMultiLineByteArray( arrayThree, "arrayThree" );
}
}
/*
This example of the
BitConverter.ToString( byte[ ], int ) and
BitConverter.ToString( byte[ ], int, int )
methods generates the following output.
arrayOne
--------
00-00-00-00-80-3F-00-00-70-41-00-FF-7F-47-00-00-80-3B-00-00-
80-2F-49-46-83-05-4B-06-9E-3F-4D-06-9E-3F-50-06-9E-3F-1E-37-
BE-79-FF-FF-7F-FF-FF-7F-7F-01-00-00-00-C0-FF-00-00-80-FF-00-
00-80-7F
arrayTwo
--------
FF-FF-FF-00-00-14-00-21-00-00-00-01-00-00-00-64-A7-B3-B6-E0-
0D-00-CA-9A-3B-00-8F-5B-00-AA-AA-AA-AA-AA-AA-00-00-E8-89-04-
23-C7-8A-FF-E8-F4-FF-FC-CD-FF-FF-81
arrayThree
----------
00-DE-00-00-00-E0-6F-40-00-00-E0-FF-FF-FF-EF-41-00-00-83-00-
00-00-70-3F-00-8F-00-64-00-00-F0-3D-DF-88-1E-1C-FE-74-AA-01-
FA-59-8C-42-CA-C0-F3-3F-FB-59-8C-42-CA-C0-F3-3F-FC-59-8C-42-
CA-C0-F3-3F-52-D3-BB-BC-E8-7E-FF-FF-FF-F4-FF-EF-7F-01-00-00-
00-0A-11-00-00-F8-FF-00-58-00-5B-00-00-F0-FF-00-00-F0-9D
*/
open System
// Display a byte array, using multiple lines if necessary.
let writeMultiLineByteArray (bytes: byte []) (name: string) =
let rowSize = 20
printfn $"{name}"
printfn $"{String('-', name.Length)}"
let mutable iter = 0
for i in 0 .. rowSize .. (bytes.Length - rowSize - 1) do
printfn $"{BitConverter.ToString(bytes, i, rowSize)}-"
iter <- i
printfn $"{BitConverter.ToString(bytes, iter + rowSize)}\n"
let arrayOne =
[| 0uy; 0uy; 0uy; 0uy; 128uy; 63uy; 0uy; 0uy; 112uy; 65uy
0uy; 255uy; 127uy; 71uy; 0uy; 0uy; 128uy; 59uy; 0uy; 0uy
128uy; 47uy; 73uy; 70uy; 131uy; 5uy; 75uy; 6uy; 158uy; 63uy
77uy; 6uy; 158uy; 63uy; 80uy; 6uy; 158uy; 63uy; 30uy; 55uy
190uy; 121uy; 255uy; 255uy; 127uy; 255uy; 255uy; 127uy; 127uy; 1uy
0uy; 0uy; 0uy; 192uy; 255uy; 0uy; 0uy; 128uy; 255uy; 0uy
0uy; 128uy; 127uy |]
let arrayTwo =
[| 255uy; 255uy; 255uy; 0uy; 0uy; 20uy; 0uy; 33uy; 0uy; 0uy
0uy; 1uy; 0uy; 0uy; 0uy; 100uy; 167uy; 179uy; 182uy; 224uy
13uy; 0uy; 202uy; 154uy; 59uy; 0uy; 143uy; 91uy; 0uy; 170uy
170uy; 170uy; 170uy; 170uy; 170uy; 0uy; 0uy; 232uy; 137uy; 4uy
35uy; 199uy; 138uy; 255uy; 232uy; 244uy; 255uy; 252uy; 205uy; 255uy
255uy; 129uy |]
let arrayThree =
[| 0uy; 222uy; 0uy; 0uy; 0uy; 224uy; 111uy; 64uy; 0uy; 0uy
224uy; 255uy; 255uy; 255uy; 239uy; 65uy; 0uy; 0uy; 131uy; 0uy
0uy; 0uy; 112uy; 63uy; 0uy; 143uy; 0uy; 100uy; 0uy; 0uy
240uy; 61uy; 223uy; 136uy; 30uy; 28uy; 254uy; 116uy; 170uy; 1uy
250uy; 89uy; 140uy; 66uy; 202uy; 192uy; 243uy; 63uy; 251uy; 89uy
140uy; 66uy; 202uy; 192uy; 243uy; 63uy; 252uy; 89uy; 140uy; 66uy
202uy; 192uy; 243uy; 63uy; 82uy; 211uy; 187uy; 188uy; 232uy; 126uy
255uy; 255uy; 255uy; 244uy; 255uy; 239uy; 127uy; 1uy; 0uy; 0uy
0uy; 10uy; 17uy; 0uy; 0uy; 248uy; 255uy; 0uy; 88uy; 0uy
91uy; 0uy; 0uy; 240uy; 255uy; 0uy; 0uy; 240uy; 157uy |]
printfn "This example of the\n BitConverter.ToString(byte [], int) and \n BitConverter.ToString(byte [], int, int) \nmethods generates the following output.\n"
writeMultiLineByteArray arrayOne "arrayOne"
writeMultiLineByteArray arrayTwo "arrayTwo"
writeMultiLineByteArray arrayThree "arrayThree"
// This example of the
// BitConverter.ToString(byte [], int) and
// BitConverter.ToString(byte [], int, int)
// methods generates the following output.
//
// arrayOne
// --------
// 00-00-00-00-80-3F-00-00-70-41-00-FF-7F-47-00-00-80-3B-00-00-
// 80-2F-49-46-83-05-4B-06-9E-3F-4D-06-9E-3F-50-06-9E-3F-1E-37-
// BE-79-FF-FF-7F-FF-FF-7F-7F-01-00-00-00-C0-FF-00-00-80-FF-00-
// 00-80-7F
//
// arrayTwo
// --------
// FF-FF-FF-00-00-14-00-21-00-00-00-01-00-00-00-64-A7-B3-B6-E0-
// 0D-00-CA-9A-3B-00-8F-5B-00-AA-AA-AA-AA-AA-AA-00-00-E8-89-04-
// 23-C7-8A-FF-E8-F4-FF-FC-CD-FF-FF-81
//
// arrayThree
// ----------
// 00-DE-00-00-00-E0-6F-40-00-00-E0-FF-FF-FF-EF-41-00-00-83-00-
// 00-00-70-3F-00-8F-00-64-00-00-F0-3D-DF-88-1E-1C-FE-74-AA-01-
// FA-59-8C-42-CA-C0-F3-3F-FB-59-8C-42-CA-C0-F3-3F-FC-59-8C-42-
// CA-C0-F3-3F-52-D3-BB-BC-E8-7E-FF-FF-FF-F4-FF-EF-7F-01-00-00-
// 00-0A-11-00-00-F8-FF-00-58-00-5B-00-00-F0-FF-00-00-F0-9D
' Example of some BitConverter.ToString( ) method overloads.
Module BytesToStringDemo
' Display a Byte array, using multiple lines if necessary.
Sub WriteMultiLineByteArray( bytes( ) As Byte, name As String )
Const rowSize As Integer = 20
Const underLine As String = "--------------------------------"
Dim iter As Integer
Console.WriteLine( name )
Console.WriteLine( underLine.Substring( 0, _
Math.Min( name.Length, underLine.Length ) ) )
For iter = 0 To bytes.Length - rowSize - 1 Step rowSize
Console.Write( _
BitConverter.ToString( bytes, iter, rowSize ) )
Console.WriteLine( "-" )
Next iter
Console.WriteLine( BitConverter.ToString( bytes, iter ) )
Console.WriteLine( )
End Sub
Sub Main( )
Dim arrayOne as Byte( ) = { _
0, 0, 0, 0, 128, 63, 0, 0, 112, 65, _
0, 255, 127, 71, 0, 0, 128, 59, 0, 0, _
128, 47, 73, 70, 131, 5, 75, 6, 158, 63, _
77, 6, 158, 63, 80, 6, 158, 63, 30, 55, _
190, 121, 255, 255, 127, 255, 255, 127, 127, 1, _
0, 0, 0, 192, 255, 0, 0, 128, 255, 0, _
0, 128, 127 }
Dim arrayTwo as Byte( ) = { _
255, 255, 255, 0, 0, 20, 0, 33, 0, 0, _
0, 1, 0, 0, 0, 100, 167, 179, 182, 224, _
13, 0, 202, 154, 59, 0, 143, 91, 0, 170, _
170, 170, 170, 170, 170, 0, 0, 232, 137, 4, _
35, 199, 138, 255, 232, 244, 255, 252, 205, 255, _
255, 129 }
Dim arrayThree as Byte( ) = { _
0, 222, 0, 0, 0, 224, 111, 64, 0, 0, _
224, 255, 255, 255, 239, 65, 0, 0, 131, 0, _
0, 0, 112, 63, 0, 143, 0, 100, 0, 0, _
240, 61, 223, 136, 30, 28, 254, 116, 170, 1, _
250, 89, 140, 66, 202, 192, 243, 63, 251, 89, _
140, 66, 202, 192, 243, 63, 252, 89, 140, 66, _
202, 192, 243, 63, 82, 211, 187, 188, 232, 126, _
255, 255, 255, 244, 255, 239, 127, 1, 0, 0, _
0, 10, 17, 0, 0, 248, 255, 0, 88, 0, _
91, 0, 0, 240, 255, 0, 0, 240, 157 }
Console.WriteLine( "This example of the" & vbCrLf & _
" BitConverter.ToString( Byte( ), Integer ) and " & _
vbCrLf & " BitConverter.ToString( Byte( ), " & _
"Integer, Integer ) " & vbCrLf & "methods generates " & _
"the following output." & vbCrLf )
WriteMultiLineByteArray( arrayOne, "arrayOne" )
WriteMultiLineByteArray( arrayTwo, "arrayTwo" )
WriteMultiLineByteArray( arrayThree, "arrayThree" )
End Sub
End Module
' This example of the
' BitConverter.ToString( Byte( ), Integer ) and
' BitConverter.ToString( Byte( ), Integer, Integer )
' methods generates the following output.
'
' arrayOne
' --------
' 00-00-00-00-80-3F-00-00-70-41-00-FF-7F-47-00-00-80-3B-00-00-
' 80-2F-49-46-83-05-4B-06-9E-3F-4D-06-9E-3F-50-06-9E-3F-1E-37-
' BE-79-FF-FF-7F-FF-FF-7F-7F-01-00-00-00-C0-FF-00-00-80-FF-00-
' 00-80-7F
'
' arrayTwo
' --------
' FF-FF-FF-00-00-14-00-21-00-00-00-01-00-00-00-64-A7-B3-B6-E0-
' 0D-00-CA-9A-3B-00-8F-5B-00-AA-AA-AA-AA-AA-AA-00-00-E8-89-04-
' 23-C7-8A-FF-E8-F4-FF-FC-CD-FF-FF-81
'
' arrayThree
' ----------
' 00-DE-00-00-00-E0-6F-40-00-00-E0-FF-FF-FF-EF-41-00-00-83-00-
' 00-00-70-3F-00-8F-00-64-00-00-F0-3D-DF-88-1E-1C-FE-74-AA-01-
' FA-59-8C-42-CA-C0-F3-3F-FB-59-8C-42-CA-C0-F3-3F-FC-59-8C-42-
' CA-C0-F3-3F-52-D3-BB-BC-E8-7E-FF-FF-FF-F4-FF-EF-7F-01-00-00-
' 00-0A-11-00-00-F8-FF-00-58-00-5B-00-00-F0-FF-00-00-F0-9D
Uwagi
Elementy z pozycji startIndex
tablicy na koniec tablicy są konwertowane.
Dotyczy
ToString(Byte[], Int32, Int32)
- Źródło:
- BitConverter.cs
- Źródło:
- BitConverter.cs
- Źródło:
- BitConverter.cs
Konwertuje wartość liczbową każdego elementu określonej podtablicy bajtów na równoważną reprezentację ciągu szesnastkowego.
public:
static System::String ^ ToString(cli::array <System::Byte> ^ value, int startIndex, int length);
public static string ToString (byte[] value, int startIndex, int length);
static member ToString : byte[] * int * int -> string
Public Shared Function ToString (value As Byte(), startIndex As Integer, length As Integer) As String
Parametry
- value
- Byte[]
Tablica bajtów zawierająca bajty do przekonwertowania.
- startIndex
- Int32
Pozycja początkowa w obrębie value
.
- length
- Int32
Liczba elementów tablicy w value
pliku do konwersji.
Zwraca
Ciąg par szesnastkowe rozdzielonych łącznikami, gdzie każda para reprezentuje odpowiedni element w podtablicy wartości value
; na przykład "7F-2C-4A-00".
Wyjątki
value
to null
.
startIndex
wartość lub length
jest mniejsza niż zero.
-lub-
startIndex
jest większa niż zero i jest większa lub równa długości value
.
Kombinacja parametru startIndex
i nie określa pozycji w obrębie value
; oznacza to, startIndex
że parametr jest większy niż długość value
minus parametru length
length
.
Przykłady
W poniższym przykładzie użyto ToString metody , aby przekonwertować część tablicy bajtów, zaczynając od określonej startIndex
i z określoną length
wartością , na ciąg.
// Example of some BitConverter::ToString( ) method overloads.
using namespace System;
// Display a byte array, using multiple lines if necessary.
void WriteMultiLineByteArray( array<unsigned char>^bytes, String^ name )
{
const int rowSize = 20;
String^ underLine = "--------------------------------";
int iter;
Console::WriteLine( name );
Console::WriteLine( underLine->Substring( 0, Math::Min( name->Length, underLine->Length ) ) );
for ( iter = 0; iter < bytes->Length - rowSize; iter += rowSize )
{
Console::Write( BitConverter::ToString( bytes, iter, rowSize ) );
Console::WriteLine( "-" );
}
Console::WriteLine( BitConverter::ToString( bytes, iter ) );
Console::WriteLine();
}
int main()
{
array<unsigned char>^arrayOne = {0,0,0,0,128,63,0,0,112,65,0,255,127,71,0,0,128,59,0,0,128,47,73,70,131,5,75,6,158,63,77,6,158,63,80,6,158,63,30,55,190,121,255,255,127,255,255,127,127,1,0,0,0,192,255,0,0,128,255,0,0,128,127};
array<unsigned char>^arrayTwo = {255,255,255,0,0,20,0,33,0,0,0,1,0,0,0,100,167,179,182,224,13,0,202,154,59,0,143,91,0,170,170,170,170,170,170,0,0,232,137,4,35,199,138,255,232,244,255,252,205,255,255,129};
array<unsigned char>^arrayThree = {0,222,0,0,0,224,111,64,0,0,224,255,255,255,239,65,0,0,131,0,0,0,112,63,0,143,0,100,0,0,240,61,223,136,30,28,254,116,170,1,250,89,140,66,202,192,243,63,251,89,140,66,202,192,243,63,252,89,140,66,202,192,243,63,82,211,187,188,232,126,255,255,255,244,255,239,127,1,0,0,0,10,17,0,0,248,255,0,88,0,91,0,0,240,255,0,0,240,157};
Console::WriteLine( "This example of the\n"
" BitConverter::ToString( unsigned char[ ], int ) and \n"
" BitConverter::ToString( unsigned char[ ], int, int ) \n"
"methods generates the following output.\n" );
WriteMultiLineByteArray( arrayOne, "arrayOne" );
WriteMultiLineByteArray( arrayTwo, "arrayTwo" );
WriteMultiLineByteArray( arrayThree, "arrayThree" );
}
/*
This example of the
BitConverter::ToString( unsigned char[ ], int ) and
BitConverter::ToString( unsigned char[ ], int, int )
methods generates the following output.
arrayOne
--------
00-00-00-00-80-3F-00-00-70-41-00-FF-7F-47-00-00-80-3B-00-00-
80-2F-49-46-83-05-4B-06-9E-3F-4D-06-9E-3F-50-06-9E-3F-1E-37-
BE-79-FF-FF-7F-FF-FF-7F-7F-01-00-00-00-C0-FF-00-00-80-FF-00-
00-80-7F
arrayTwo
--------
FF-FF-FF-00-00-14-00-21-00-00-00-01-00-00-00-64-A7-B3-B6-E0-
0D-00-CA-9A-3B-00-8F-5B-00-AA-AA-AA-AA-AA-AA-00-00-E8-89-04-
23-C7-8A-FF-E8-F4-FF-FC-CD-FF-FF-81
arrayThree
----------
00-DE-00-00-00-E0-6F-40-00-00-E0-FF-FF-FF-EF-41-00-00-83-00-
00-00-70-3F-00-8F-00-64-00-00-F0-3D-DF-88-1E-1C-FE-74-AA-01-
FA-59-8C-42-CA-C0-F3-3F-FB-59-8C-42-CA-C0-F3-3F-FC-59-8C-42-
CA-C0-F3-3F-52-D3-BB-BC-E8-7E-FF-FF-FF-F4-FF-EF-7F-01-00-00-
00-0A-11-00-00-F8-FF-00-58-00-5B-00-00-F0-FF-00-00-F0-9D
*/
// Example of some BitConverter.ToString( ) method overloads.
using System;
class BytesToStringDemo
{
// Display a byte array, using multiple lines if necessary.
public static void WriteMultiLineByteArray( byte[ ] bytes,
string name )
{
const int rowSize = 20;
const string underLine = "--------------------------------";
int iter;
Console.WriteLine( name );
Console.WriteLine( underLine.Substring( 0,
Math.Min( name.Length, underLine.Length ) ) );
for( iter = 0; iter < bytes.Length - rowSize; iter += rowSize )
{
Console.Write(
BitConverter.ToString( bytes, iter, rowSize ) );
Console.WriteLine( "-" );
}
Console.WriteLine( BitConverter.ToString( bytes, iter ) );
Console.WriteLine( );
}
public static void Main( )
{
byte[ ] arrayOne = {
0, 0, 0, 0, 128, 63, 0, 0, 112, 65,
0, 255, 127, 71, 0, 0, 128, 59, 0, 0,
128, 47, 73, 70, 131, 5, 75, 6, 158, 63,
77, 6, 158, 63, 80, 6, 158, 63, 30, 55,
190, 121, 255, 255, 127, 255, 255, 127, 127, 1,
0, 0, 0, 192, 255, 0, 0, 128, 255, 0,
0, 128, 127 };
byte[ ] arrayTwo = {
255, 255, 255, 0, 0, 20, 0, 33, 0, 0,
0, 1, 0, 0, 0, 100, 167, 179, 182, 224,
13, 0, 202, 154, 59, 0, 143, 91, 0, 170,
170, 170, 170, 170, 170, 0, 0, 232, 137, 4,
35, 199, 138, 255, 232, 244, 255, 252, 205, 255,
255, 129 };
byte[ ] arrayThree = {
0, 222, 0, 0, 0, 224, 111, 64, 0, 0,
224, 255, 255, 255, 239, 65, 0, 0, 131, 0,
0, 0, 112, 63, 0, 143, 0, 100, 0, 0,
240, 61, 223, 136, 30, 28, 254, 116, 170, 1,
250, 89, 140, 66, 202, 192, 243, 63, 251, 89,
140, 66, 202, 192, 243, 63, 252, 89, 140, 66,
202, 192, 243, 63, 82, 211, 187, 188, 232, 126,
255, 255, 255, 244, 255, 239, 127, 1, 0, 0,
0, 10, 17, 0, 0, 248, 255, 0, 88, 0,
91, 0, 0, 240, 255, 0, 0, 240, 157 };
Console.WriteLine( "This example of the\n" +
" BitConverter.ToString( byte[ ], int ) and \n" +
" BitConverter.ToString( byte[ ], int, int ) \n" +
"methods generates the following output.\n" );
WriteMultiLineByteArray( arrayOne, "arrayOne" );
WriteMultiLineByteArray( arrayTwo, "arrayTwo" );
WriteMultiLineByteArray( arrayThree, "arrayThree" );
}
}
/*
This example of the
BitConverter.ToString( byte[ ], int ) and
BitConverter.ToString( byte[ ], int, int )
methods generates the following output.
arrayOne
--------
00-00-00-00-80-3F-00-00-70-41-00-FF-7F-47-00-00-80-3B-00-00-
80-2F-49-46-83-05-4B-06-9E-3F-4D-06-9E-3F-50-06-9E-3F-1E-37-
BE-79-FF-FF-7F-FF-FF-7F-7F-01-00-00-00-C0-FF-00-00-80-FF-00-
00-80-7F
arrayTwo
--------
FF-FF-FF-00-00-14-00-21-00-00-00-01-00-00-00-64-A7-B3-B6-E0-
0D-00-CA-9A-3B-00-8F-5B-00-AA-AA-AA-AA-AA-AA-00-00-E8-89-04-
23-C7-8A-FF-E8-F4-FF-FC-CD-FF-FF-81
arrayThree
----------
00-DE-00-00-00-E0-6F-40-00-00-E0-FF-FF-FF-EF-41-00-00-83-00-
00-00-70-3F-00-8F-00-64-00-00-F0-3D-DF-88-1E-1C-FE-74-AA-01-
FA-59-8C-42-CA-C0-F3-3F-FB-59-8C-42-CA-C0-F3-3F-FC-59-8C-42-
CA-C0-F3-3F-52-D3-BB-BC-E8-7E-FF-FF-FF-F4-FF-EF-7F-01-00-00-
00-0A-11-00-00-F8-FF-00-58-00-5B-00-00-F0-FF-00-00-F0-9D
*/
open System
// Display a byte array, using multiple lines if necessary.
let writeMultiLineByteArray (bytes: byte []) (name: string) =
let rowSize = 20
printfn $"{name}"
printfn $"{String('-', name.Length)}"
let mutable iter = 0
for i in 0 .. rowSize .. (bytes.Length - rowSize - 1) do
printfn $"{BitConverter.ToString(bytes, i, rowSize)}-"
iter <- i
printfn $"{BitConverter.ToString(bytes, iter + rowSize)}\n"
let arrayOne =
[| 0uy; 0uy; 0uy; 0uy; 128uy; 63uy; 0uy; 0uy; 112uy; 65uy
0uy; 255uy; 127uy; 71uy; 0uy; 0uy; 128uy; 59uy; 0uy; 0uy
128uy; 47uy; 73uy; 70uy; 131uy; 5uy; 75uy; 6uy; 158uy; 63uy
77uy; 6uy; 158uy; 63uy; 80uy; 6uy; 158uy; 63uy; 30uy; 55uy
190uy; 121uy; 255uy; 255uy; 127uy; 255uy; 255uy; 127uy; 127uy; 1uy
0uy; 0uy; 0uy; 192uy; 255uy; 0uy; 0uy; 128uy; 255uy; 0uy
0uy; 128uy; 127uy |]
let arrayTwo =
[| 255uy; 255uy; 255uy; 0uy; 0uy; 20uy; 0uy; 33uy; 0uy; 0uy
0uy; 1uy; 0uy; 0uy; 0uy; 100uy; 167uy; 179uy; 182uy; 224uy
13uy; 0uy; 202uy; 154uy; 59uy; 0uy; 143uy; 91uy; 0uy; 170uy
170uy; 170uy; 170uy; 170uy; 170uy; 0uy; 0uy; 232uy; 137uy; 4uy
35uy; 199uy; 138uy; 255uy; 232uy; 244uy; 255uy; 252uy; 205uy; 255uy
255uy; 129uy |]
let arrayThree =
[| 0uy; 222uy; 0uy; 0uy; 0uy; 224uy; 111uy; 64uy; 0uy; 0uy
224uy; 255uy; 255uy; 255uy; 239uy; 65uy; 0uy; 0uy; 131uy; 0uy
0uy; 0uy; 112uy; 63uy; 0uy; 143uy; 0uy; 100uy; 0uy; 0uy
240uy; 61uy; 223uy; 136uy; 30uy; 28uy; 254uy; 116uy; 170uy; 1uy
250uy; 89uy; 140uy; 66uy; 202uy; 192uy; 243uy; 63uy; 251uy; 89uy
140uy; 66uy; 202uy; 192uy; 243uy; 63uy; 252uy; 89uy; 140uy; 66uy
202uy; 192uy; 243uy; 63uy; 82uy; 211uy; 187uy; 188uy; 232uy; 126uy
255uy; 255uy; 255uy; 244uy; 255uy; 239uy; 127uy; 1uy; 0uy; 0uy
0uy; 10uy; 17uy; 0uy; 0uy; 248uy; 255uy; 0uy; 88uy; 0uy
91uy; 0uy; 0uy; 240uy; 255uy; 0uy; 0uy; 240uy; 157uy |]
printfn "This example of the\n BitConverter.ToString(byte [], int) and \n BitConverter.ToString(byte [], int, int) \nmethods generates the following output.\n"
writeMultiLineByteArray arrayOne "arrayOne"
writeMultiLineByteArray arrayTwo "arrayTwo"
writeMultiLineByteArray arrayThree "arrayThree"
// This example of the
// BitConverter.ToString(byte [], int) and
// BitConverter.ToString(byte [], int, int)
// methods generates the following output.
//
// arrayOne
// --------
// 00-00-00-00-80-3F-00-00-70-41-00-FF-7F-47-00-00-80-3B-00-00-
// 80-2F-49-46-83-05-4B-06-9E-3F-4D-06-9E-3F-50-06-9E-3F-1E-37-
// BE-79-FF-FF-7F-FF-FF-7F-7F-01-00-00-00-C0-FF-00-00-80-FF-00-
// 00-80-7F
//
// arrayTwo
// --------
// FF-FF-FF-00-00-14-00-21-00-00-00-01-00-00-00-64-A7-B3-B6-E0-
// 0D-00-CA-9A-3B-00-8F-5B-00-AA-AA-AA-AA-AA-AA-00-00-E8-89-04-
// 23-C7-8A-FF-E8-F4-FF-FC-CD-FF-FF-81
//
// arrayThree
// ----------
// 00-DE-00-00-00-E0-6F-40-00-00-E0-FF-FF-FF-EF-41-00-00-83-00-
// 00-00-70-3F-00-8F-00-64-00-00-F0-3D-DF-88-1E-1C-FE-74-AA-01-
// FA-59-8C-42-CA-C0-F3-3F-FB-59-8C-42-CA-C0-F3-3F-FC-59-8C-42-
// CA-C0-F3-3F-52-D3-BB-BC-E8-7E-FF-FF-FF-F4-FF-EF-7F-01-00-00-
// 00-0A-11-00-00-F8-FF-00-58-00-5B-00-00-F0-FF-00-00-F0-9D
' Example of some BitConverter.ToString( ) method overloads.
Module BytesToStringDemo
' Display a Byte array, using multiple lines if necessary.
Sub WriteMultiLineByteArray( bytes( ) As Byte, name As String )
Const rowSize As Integer = 20
Const underLine As String = "--------------------------------"
Dim iter As Integer
Console.WriteLine( name )
Console.WriteLine( underLine.Substring( 0, _
Math.Min( name.Length, underLine.Length ) ) )
For iter = 0 To bytes.Length - rowSize - 1 Step rowSize
Console.Write( _
BitConverter.ToString( bytes, iter, rowSize ) )
Console.WriteLine( "-" )
Next iter
Console.WriteLine( BitConverter.ToString( bytes, iter ) )
Console.WriteLine( )
End Sub
Sub Main( )
Dim arrayOne as Byte( ) = { _
0, 0, 0, 0, 128, 63, 0, 0, 112, 65, _
0, 255, 127, 71, 0, 0, 128, 59, 0, 0, _
128, 47, 73, 70, 131, 5, 75, 6, 158, 63, _
77, 6, 158, 63, 80, 6, 158, 63, 30, 55, _
190, 121, 255, 255, 127, 255, 255, 127, 127, 1, _
0, 0, 0, 192, 255, 0, 0, 128, 255, 0, _
0, 128, 127 }
Dim arrayTwo as Byte( ) = { _
255, 255, 255, 0, 0, 20, 0, 33, 0, 0, _
0, 1, 0, 0, 0, 100, 167, 179, 182, 224, _
13, 0, 202, 154, 59, 0, 143, 91, 0, 170, _
170, 170, 170, 170, 170, 0, 0, 232, 137, 4, _
35, 199, 138, 255, 232, 244, 255, 252, 205, 255, _
255, 129 }
Dim arrayThree as Byte( ) = { _
0, 222, 0, 0, 0, 224, 111, 64, 0, 0, _
224, 255, 255, 255, 239, 65, 0, 0, 131, 0, _
0, 0, 112, 63, 0, 143, 0, 100, 0, 0, _
240, 61, 223, 136, 30, 28, 254, 116, 170, 1, _
250, 89, 140, 66, 202, 192, 243, 63, 251, 89, _
140, 66, 202, 192, 243, 63, 252, 89, 140, 66, _
202, 192, 243, 63, 82, 211, 187, 188, 232, 126, _
255, 255, 255, 244, 255, 239, 127, 1, 0, 0, _
0, 10, 17, 0, 0, 248, 255, 0, 88, 0, _
91, 0, 0, 240, 255, 0, 0, 240, 157 }
Console.WriteLine( "This example of the" & vbCrLf & _
" BitConverter.ToString( Byte( ), Integer ) and " & _
vbCrLf & " BitConverter.ToString( Byte( ), " & _
"Integer, Integer ) " & vbCrLf & "methods generates " & _
"the following output." & vbCrLf )
WriteMultiLineByteArray( arrayOne, "arrayOne" )
WriteMultiLineByteArray( arrayTwo, "arrayTwo" )
WriteMultiLineByteArray( arrayThree, "arrayThree" )
End Sub
End Module
' This example of the
' BitConverter.ToString( Byte( ), Integer ) and
' BitConverter.ToString( Byte( ), Integer, Integer )
' methods generates the following output.
'
' arrayOne
' --------
' 00-00-00-00-80-3F-00-00-70-41-00-FF-7F-47-00-00-80-3B-00-00-
' 80-2F-49-46-83-05-4B-06-9E-3F-4D-06-9E-3F-50-06-9E-3F-1E-37-
' BE-79-FF-FF-7F-FF-FF-7F-7F-01-00-00-00-C0-FF-00-00-80-FF-00-
' 00-80-7F
'
' arrayTwo
' --------
' FF-FF-FF-00-00-14-00-21-00-00-00-01-00-00-00-64-A7-B3-B6-E0-
' 0D-00-CA-9A-3B-00-8F-5B-00-AA-AA-AA-AA-AA-AA-00-00-E8-89-04-
' 23-C7-8A-FF-E8-F4-FF-FC-CD-FF-FF-81
'
' arrayThree
' ----------
' 00-DE-00-00-00-E0-6F-40-00-00-E0-FF-FF-FF-EF-41-00-00-83-00-
' 00-00-70-3F-00-8F-00-64-00-00-F0-3D-DF-88-1E-1C-FE-74-AA-01-
' FA-59-8C-42-CA-C0-F3-3F-FB-59-8C-42-CA-C0-F3-3F-FC-59-8C-42-
' CA-C0-F3-3F-52-D3-BB-BC-E8-7E-FF-FF-FF-F4-FF-EF-7F-01-00-00-
' 00-0A-11-00-00-F8-FF-00-58-00-5B-00-00-F0-FF-00-00-F0-9D
Uwagi
length
Elementy z pozycji startIndex
tablicy są konwertowane. Jeśli length
równa się zero, metoda zwraca wartość String.Empty.