如果小数为零,则忽略但非零,需要读入前两位"35.0" or "35.0000" = 35"35.0193" = 35.01"35.98759" = 35.98有任何想法吗?var splitSku4 = value.Split('.');if (splitSku4.Length > 1){ if (!splitSku4[1].StartsWith("0") || !splitSku4[1].StartsWith("00")) { sku4 = string.Format("{0}.{1}", splitSku4[0], splitSku4[1].Substring(0, 2)); }}卡在这一点
2 回答
慕尼黑8549860
TA贡献1818条经验 获得超11个赞
如果您有一个包含数值的字符串,您可以使用 Convert 方法之一(例如Convert.ToDouble)或使用与目标数据类型关联的 Parse 或 TryParse 方法之一(例如Double.Parse)来转换它。
例子:
var input = "35.98759";
var number = double.Parse(input);
或者
var number = Convert.ToDouble(input);
将值存储在数字数据类型中后,您可以使用Math.Round删除最低有效数字
var input = "35.98759";
var number = double.Parse(input);
var numberToTwoDecimals = Math.Round(number, 2);
如果你总是想向下取整,有几种方法可以做到,但在这种情况下最简单的方法是在四舍五入之前减去 0.005。
var result = Math.Round(number - 0.005F, 2);
删除小数后,您可以根据需要将其转换回字符串:
var outputString = result.ToString("0.00");
结果:
35.98
- 2 回答
- 0 关注
- 175 浏览
添加回答
举报
0/150
提交
取消