In order to binary serialize a decimal type I do the following:
var ms = new MemoryStream();
decimal d = 123.45M;
int[] bits = Decimal.GetBits(d);
for(int i=0; i<4; i++)
ms.Write(BitConverter.GetBytes(bits[i]),0,4);
Now that I have a int[] bits
variable how can I convert that back to a decimal? Or how can I convert the 16 bytes in the memory stream back to a decimal? Is this possible to do without having to use unsafe code?
With float, int, bool and other types that is simple to do. I just use the System.Convert and BitConverter static classes.