C#将十进制类型作为字符串进行比较

时间:2011-06-08 14:21:48

标签: c# decimal tostring

我正在为我们的网站编写一个日志记录系统,它会查看实体的更改以查看是否应该记录它们。我一直有一个问题,数据库中的实体版本显示十进制数字(字符串格式)为“132.0000”,当前实体将其显示为“132”,没有小数位。 有没有办法可以强制它从一个中移除“.0000”或将其添加到另一个?

6 个答案:

答案 0 :(得分:2)

嗯,只需将数据库中的值解析为小数并将其与已有的小数进行比较?

答案 1 :(得分:1)

将条目转换回十进制,我会说。

答案 2 :(得分:1)

您可以尝试:

if(132 == Convert.ToDecimal("132.0000")
{
    //Do Stuff
}

用适当的值替换132和“132.0000”。

另外,如果你想删除“132.0000”的小数部分,你可以这样做:

string dec = "132.0000";

dec = dec.Substring(0,dec.IndexOf("."));

答案 3 :(得分:0)

如果你总是想删除小数,为什么不把对象强制转换为int然后再创建一个字符串呢?

答案 4 :(得分:0)

如果所有的比较都是数字,你必须找到两者之间的共性。在您的帖子中,您已经提供了答案。您需要一个整数而不是一个浮点数。将两个字符串转换为其中一个整数类型并进行比较。

答案 5 :(得分:-1)

您可以使用格式化程序字符串:F4 xxx.ToString( “F4”)