[英]Convert byte array represented for sql_variant typed column value to long/int64
我從數據庫表的sql_variant
列中提取了10個元素的字節數組值,並希望將其轉換為長值。 我試過了
byte []a = new byte[10]{ 127, 1, 0, 202, 154, 59, 0, 0, 0, 0 };
long i = BitConverter.ToInt64(a, 0);
Console.WriteLine("{0}", i);
但這並沒有給我正確的結果。 我希望它是10000000000
。
謝謝,如果您能為我提供一些我可以研究的C#中的類或方法的想法。
十六進制表示法10000000000是02540BE400。
該值的字節數組以相反的順序是:
byte[] a = new byte[10] { 0x00, 0xE4, 0x0B, 0x54, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00};
或十進制表示法:
byte[] a = new byte[10] { 0, 228, 11, 84, 2, 0, 0, 0, 0, 0 };
對於此數組,您的函數將返回預期結果:10000000000。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.