繁体   English   中英

C#如何从double中提取字节

[英]C# How to extract bytes from double

如何从double类型中提取字节。 我知道它有8个字节,就像long一样。 如何创建一个与double具有相同字节的long变量。

double a = 1.5;
long b = (long)a; // <- this returns 1
// i want to get this: 0 01111111111 1000000000000000000000000000000000000000000000000000
//which is 4609434218613702656 as long (I guess :) )

请问我该如何快速进行?

你可以这样得到

double a = 1.5;
long l = BitConverter.ToInt64(BitConverter.GetBytes(a), 0);

这将是4609434218613702656

正如@harold建议的

var l2 = BitConverter.DoubleToInt64Bits(a);

也有可能

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM