簡體   English   中英

如何將GUID的一部分轉換為long?

[英]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)

http://msdn.microsoft.com/en-us/library/bb311038.aspx

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM