是否可以剪切十进制而不是四舍五入。喜欢这个。十进制剪切问题
decimal number = 12.159m;
我怎样才能从number
而不是12.16容易得到12.15?
有没有简单的方法或是字符串操作的唯一方法?
是否可以剪切十进制而不是四舍五入。喜欢这个。十进制剪切问题
decimal number = 12.159m;
我怎样才能从number
而不是12.16容易得到12.15?
有没有简单的方法或是字符串操作的唯一方法?
你可以试试这个
decimal number = 12.159m;
number = Math.Truncate(number * 100m)/100m;
或者其他做这件事的方式是使用正则表达式来捕获输入,并将其转换回十进制,例如
Regex r = new Regex("(?<postNo>\d+)\.(?<preNo>\d{1,3})"); Decimal d= 12.159M; Match m = r.Match(d.ToString()); if (m.Success){ string s = string.Format("{0}.{1}", m.Groups["postNo"].Text, m.Groups["preNo"].Text); Decimal d = Decimal.Parse(s); }
在“ preNo'标记,例如,如果你想保留数字,但是只有两个数字在该点之后,你可以从\ d {1,2}改变它。好吧,我知道人们会说,嘿,这是缓慢的,downvote这个答案...它表明有办法皮肤猫!
希望这会有所帮助, 最好的问候, 汤姆。
P.S:编辑完成后,我意识到编辑已经逃过了缺失的文字!
谢谢你的工作! – Tuoski 2009-11-24 11:30:59