返回小数的整数部分的最佳方法是什么(在c#中)?(这必须适用于可能不适合int的非常大的数字).
GetIntPart(343564564.4342) >> 343564564 GetIntPart(-323489.32) >> -323489 GetIntPart(324) >> 324
这样做的目的是:我插入数据库中的十进制(30,4)字段,并希望确保我不会尝试插入一个数字而不是字段太长.确定小数的整数部分的长度是该操作的一部分.
顺便说一下,(int)Decimal.MaxValue会溢出.你不能得到十进制的"int"部分,因为小数太大而无法放入int框中.刚刚检查过......它甚至太长了(Int64).
如果你想要一个十进制值的位到点的左边,你需要这样做:
Math.Truncate(number)
并将值返回为...... DECIMAL或DOUBLE.
编辑:Truncate绝对是正确的功能!
我认为System.Math.Truncate就是你要找的东西.