मैं GUIDs के बारे में हाल ही में सोच रहा था, जो मुझे इस कोड की कोशिश करने के लिए नेतृत्व:ये दो स्ट्रिंग बराबर क्यों नहीं हैं?
Guid guid = Guid.NewGuid();
Console.WriteLine(guid.ToString()); //prints 6d1dc8c8-cd83-45b2-915f-c759134b93aa
Console.WriteLine(BitConverter.ToString(guid.ToByteArray())); //prints C8-C8-1D-6D-83-CD-B2-45-91-5F-C7-59-13-4B-93-AA
bool same=guid.ToString()==BitConverter.ToString(guid.ToByteArray()); //false
Console.WriteLine(same);
आपको लगता है कि बाइट्स के सभी देखते हैं देख सकते हैं, लेकिन जब मैं BitConverter.ToString
का उपयोग उनमें से आधे गलत क्रम में हैं। ऐसा क्यों है?
* अंधा अनुमान *: BitConverter और bytearray एक साथ अच्छी तरह से काम नहीं करता है? –
'guid.ToByteArray()' ** एक 16-तत्व बाइट सरणी देता है जिसमें इस उदाहरण का मान होता है। ** –
https://msdn.microsoft.com/en-us/library/system.guid.tobytearray (v = vs.110) .aspx –