Guid.ToByteArray Method
Definition
Returns a 16-element byte array that contains the value of this instance.
public:
cli::array <System::Byte> ^ ToByteArray();
public byte[] ToByteArray ();
member this.ToByteArray : unit -> byte[]
Public Function ToByteArray () As Byte()
Returns
- Byte[]
A 16-element byte array.
Examples
The following example calls the NewGuid method to create a Guid value, and then calls the ToByteArray method to represent the Guid value as a byte array. It then displays both values to the console. Finally, it instantiates a new Guid value from the byte array and calls its Equals(Guid) method to show that the two Guid values are identical.
Guid guid = Guid.NewGuid();
Console.WriteLine($"Guid: {guid}");
var bytes = guid.ToByteArray();
foreach (var byt in bytes)
Console.Write($"{byt:X2} ");
Console.WriteLine();
var guid2 = new Guid(bytes);
Console.WriteLine($"Guid: {guid2} (Same as First Guid: {guid2.Equals(guid)})");
// The example displays output similar to the following:
//
// Guid: 35918bc9-196d-40ea-9779-889d79b753f0
// C9 8B 91 35 6D 19 EA 40 97 79 88 9D 79 B7 53 F0
// Guid: 35918bc9-196d-40ea-9779-889d79b753f0 (Same as First Guid: True)
Module Example
Public Sub Main()
Dim guid As Guid = Guid.NewGuid
Console.WriteLine("Guid: {0}", guid)
Dim bytes() As Byte = guid.ToByteArray
For Each byt In bytes
Console.Write("{0:X2} ", byt)
Next
Console.WriteLine()
Dim guid2 As New Guid(bytes)
Console.WriteLine("Guid: {0} (Same as First Guid: {1})", guid2, guid2.Equals(guid))
End Sub
End Module
' The example displays the following output:
' Guid: 35918bc9-196d-40ea-9779-889d79b753f0
' C9 8B 91 35 6D 19 EA 40 97 79 88 9D 79 B7 53 F0
' Guid: 35918bc9-196d-40ea-9779-889d79b753f0 (Same as First Guid: True)
Remarks
You can use the byte array returned by this method to round-trip a Guid value by calling the Guid(Byte[]) constructor.
Note that the order of bytes in the returned byte array is different from the string representation of a Guid value. The order of the beginning four-byte group and the next two two-byte groups is reversed, whereas the order of the last two-byte group and the closing six-byte group is the same. The example provides an illustration.