[英]How can I convert part of a GUID to a long?
說我有這個GUID:
57F67098-00A9-4F78-A729-4234F5AC512C
我只想在C#中將最后一部分( 4234F5AC512C
)轉換為long。
嘗試
long result = BitConverter.ToInt64(yourGuid.ToByteArray(), 8);
這將使用最后八個字節,而不僅僅是最后六個字節。 如果只需要六個字節,則可以追加& 0xFFFFFFFFFFFF
。
未經測試。 檢查字節順序和字節序是否符合要求。
獲取字符串的最后一部分,然后將Convert.ToInt64與接受基數為16的重載一起使用。
Guid g = new Guid("57F67098-00A9-4F78-A729-4234F5AC512C");
int pos = g.ToString().LastIndexOf('-');
string part = g.ToString().Substring(pos+1);
long result = Convert.ToInt64(part, 16);
Console.WriteLine(result.ToString());
這是一個十六進制(以16為底)的值。 您可以通過Convert.ToInt64("4234F5AC512C", 16)
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.