我想转换这个"价格"变量字符串到标准的两位数60.00十进制值。怎么可能?任何现成的方法可用吗?提前谢谢
string price = "60.0000";
decimal _price = //asign value here. format will be 60.00
答案 0 :(得分:1)
您可以先解析price
,然后使用Round
方法,您可以在其中指定所需的小数位数:
decimal _price = Math.Round(decimal.Parse(price),2);
答案 1 :(得分:0)
您可以尝试三种方式: 第一:
string price = "60.0000";
decimal _price = Math.Round(Convert.ToDecimal(price),2);
第二
string price = "60.0000";
decimal _price = Math.Round(Decimal.Parse(price),2);
或者由于防止错误而推荐的第三个也是最受推荐的:
string price = "60.0000";
decimal _price;
Decimal.TryParse(price, out _price);
_price = Math.Round(_price, 2);
在第三种方式中,您可以在开头将_price分配给某些不切实际的价格,例如
decimal _price = -9999;
当价格不是一个可以在_price中转换成十进制的数字时,将是-9999并且你知道存在一些问题。