[英]Convert decimal to byte array
假设我有decimal X
我想将3个字节计算为a,b,c
,其中a.bc
Gig在X附近。
我希望它尽可能干净和短。
我已经实现了它,但是它很糟糕,但是可以工作。
例如X = 2972117368
,我想要a = 2, b = 7, c = 6
。 怎么样?
2972117368 /(1024 * 1024 * 1024)= 2.76799999922514
X将始终小于9.99 GB。
似乎您已完成大部分工作:
decimal x = 2972117368;
double gig = Convert.ToDouble(x) / 1073741824.0;
byte a = (byte)Math.Floor(gig); // works for up to 127 gig - actually up to 256
byte b = (byte)(Math.Floor(gig * 10) % 10);
byte c = (byte)(Math.Floor(gig * 100) % 10);
编辑:对于某些错别字和逻辑错误
Encoding.ASCII.GetBytes((double.Parse((X / (1024.0 * 1024 * 1024)).ToString("0.00")) * 100).ToString())
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.