Convert byte[] or object to GUID

Manikandan Sethuraju picture Manikandan Sethuraju · Jun 2, 2012 · Viewed 32.6k times · Source

I assigned some value to object data type like,

object objData =dc.GetDirectoryEntry().Properties["objectGUID"].Value;

this object retun the value like {byte[16]} [0]: 145 [1]: 104 [2]: 117 [3]: 139 [4]: 124 [5]: 15 [6]: 255 [7]: 68 [8]: 142 [9]: 159 [10]: 208 [11]: 102 [12]: 148 [13]: 157 [14]: 179 [15]: 75

Then i casting this object to byte[], like

byte[] binaryData = objData as byte[];

It will also return like, {byte[16]} [0]: 145 [1]: 104 [2]: 117 [3]: 139 [4]: 124 [5]: 15 [6]: 255 [7]: 68 [8]: 142 [9]: 159 [10]: 208 [11]: 102 [12]: 148 [13]: 157 [14]: 179 [15]: 75

Then i convert the hex values from byte[] like,

string strHex = BitConverter.ToString(binaryData);

It will be return like **91-68-75-8B-7C-0F-FF-44-8E-9F-D0-66-94-9D-B3-4B**.. But i need the output like GUID format, How can i achieve this?

Answer

Jon Skeet picture Jon Skeet · Jun 2, 2012

How about using the Guid constructor which takes a byte array?

Guid guid = new Guid(binaryData);

(You can then use Guid.ToString() to get it in text form if you need to.)